当前位置: 首页>>代码示例>>C#>>正文


C# Board.InitBoard方法代码示例

本文整理汇总了C#中Board.InitBoard方法的典型用法代码示例。如果您正苦于以下问题:C# Board.InitBoard方法的具体用法?C# Board.InitBoard怎么用?C# Board.InitBoard使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Board的用法示例。


在下文中一共展示了Board.InitBoard方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TestCastleBlackKingsideBlocked

        public void TestCastleBlackKingsideBlocked()
        {
            var b = new Board();
            b.InitBoard();
            b.State[61] = 0;
            Assert.IsTrue(b.CanCastleKBlack);

            var moves = Moves.GetValidMoves(b, 60);
            Assert.AreEqual(1, moves.Length);
            Assert.IsTrue(moves.Contains(61));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:11,代码来源:TestMovesKing.cs

示例2: TestCastleBlackQueensideBlocked

        public void TestCastleBlackQueensideBlocked()
        {
            var b = new Board();
            b.InitBoard();
            b.State[59] = 0;
            b.State[57] = 0;
            Assert.IsTrue(b.CanCastleQBlack);

            var moves = Moves.GetValidMoves(b, 60);
            Assert.AreEqual(1, moves.Length);
            Assert.IsTrue(moves.Contains(59));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:12,代码来源:TestMovesKing.cs

示例3: TestCastleBlackKingsideRookMoved

        public void TestCastleBlackKingsideRookMoved()
        {
            var b = new Board();
            b.InitBoard();
            b.State[61] = 0;
            b.State[62] = 0;
            b.PlayerTurn = Color.Black;
            bool ok = b.Move(63, 62);
            Assert.IsTrue(ok);
            b.PlayerTurn = Color.Black;
            b.Move(62, 63);
            Assert.IsTrue(ok);

            Assert.IsFalse(b.CanCastleKBlack);

            var moves = Moves.GetValidMoves(b, 60);
            Assert.AreEqual(1, moves.Length);
            Assert.IsTrue(moves.Contains(61));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:19,代码来源:TestMovesKing.cs

示例4: TestIsCastlingMove

        public void TestIsCastlingMove()
        {
            var b = new Board();
            b.InitBoard();
            Assert.IsTrue(b.CanCastleKWhite);

            Assert.AreEqual(Castling.KingsideWhite, Moves.IsCastlingMove(b, 4, 6));
            Assert.AreEqual(Castling.QueensideWhite, Moves.IsCastlingMove(b, 4, 2));

            Assert.IsTrue(Moves.IsCastlingMove(b, 4, 5) == 0);
            Assert.IsTrue(Moves.IsCastlingMove(b, 4, 7) == 0);
            Assert.IsTrue(Moves.IsCastlingMove(b, 4, 3) == 0);
            Assert.IsTrue(Moves.IsCastlingMove(b, 4, 1) == 0);

            Assert.AreEqual(Castling.KingsideBlack, Moves.IsCastlingMove(b, 60, 62));
            Assert.AreEqual(Castling.QueensideBlack, Moves.IsCastlingMove(b, 60, 58));

            Assert.IsTrue(Moves.IsCastlingMove(b, 60, 61) == 0);
            Assert.IsTrue(Moves.IsCastlingMove(b, 60, 63) == 0);
            Assert.IsTrue(Moves.IsCastlingMove(b, 60, 69) == 0);
            Assert.IsTrue(Moves.IsCastlingMove(b, 60, 57) == 0);
        }
开发者ID:adh2050,项目名称:Chess,代码行数:22,代码来源:TestMoves.cs

示例5: TestCastleBlackQueensideRookMoved

        public void TestCastleBlackQueensideRookMoved()
        {
            var b = new Board();
            b.InitBoard();
            b.State[59] = 0;
            b.State[58] = 0;
            b.State[57] = 0;
            b.PlayerTurn = Color.Black;
            bool ok = b.Move(56, 57);
            Assert.IsTrue(ok);
            b.PlayerTurn = Color.Black;
            ok = b.Move(57, 58);
            Assert.IsTrue(ok);

            Assert.IsFalse(b.CanCastleQBlack);

            var moves = Moves.GetValidMoves(b, 60);
            Assert.AreEqual(1, moves.Length);
            Assert.IsTrue(moves.Contains(59));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:20,代码来源:TestMovesKing.cs

示例6: TestCastleWhiteQueensideRookMoved

        public void TestCastleWhiteQueensideRookMoved()
        {
            var b = new Board();
            b.InitBoard();
            b.State[3] = 0;
            b.State[2] = 0;
            b.State[1] = 0;
            bool ok = b.Move(0, 1);
            Assert.IsTrue(ok);
            b.PlayerTurn = Color.White;
            ok = b.Move(1, 0);
            Assert.IsTrue(ok);

            Assert.IsFalse(b.CanCastleQWhite);

            var moves = Moves.GetValidMoves(b, 4);
            Assert.AreEqual(1, moves.Length);
            Assert.IsTrue(moves.Contains(3));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:19,代码来源:TestMovesKing.cs

示例7: TestCastleWhiteQueensideOK

        public void TestCastleWhiteQueensideOK()
        {
            var b = new Board();
            b.InitBoard();
            b.State[1] = 0;
            b.State[2] = 0;
            b.State[3] = 0;
            Assert.IsTrue(b.CanCastleQWhite);

            var moves = Moves.GetValidMoves(b, 4);
            Assert.AreEqual(2, moves.Length);
            Assert.IsTrue(moves.Contains(3));
            Assert.IsTrue(moves.Contains(2));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:14,代码来源:TestMovesKing.cs

示例8: TestCastleWhiteKingsideRookMoved

        public void TestCastleWhiteKingsideRookMoved()
        {
            var b = new Board();
            b.InitBoard();
            b.State[5] = 0;
            b.State[6] = 0;

            bool ok = b.Move(7, 6);
            Assert.IsTrue(ok);
            b.PlayerTurn = Color.White;
            ok = b.Move(6, 7);
            Assert.IsTrue(ok);

            Assert.IsFalse(b.CanCastleKWhite);

            var moves = Moves.GetValidMoves(b, 4);
            Assert.AreEqual(1, moves.Length);
            Assert.IsTrue(moves.Contains(5));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:19,代码来源:TestMovesKing.cs

示例9: TestCastleWhiteKingsideOK

        public void TestCastleWhiteKingsideOK()
        {
            var b = new Board();
            b.InitBoard();
            b.State[5] = 0;
            b.State[6] = 0;
            Assert.IsTrue(b.CanCastleKWhite);

            var moves = Moves.GetValidMoves(b, 4);
            Assert.AreEqual(2, moves.Length);
            Assert.IsTrue(moves.Contains(5));
            Assert.IsTrue(moves.Contains(6));
        }
开发者ID:adh2050,项目名称:Chess,代码行数:13,代码来源:TestMovesKing.cs


注:本文中的Board.InitBoard方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。