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


C# IPlayer.AddFigure方法代码示例

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


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

示例1: AddPawnsToBoardRow

        private void AddPawnsToBoardRow(IPlayer player, IBoard board, int chessRow)
        {
            for (int i = 0; i < GlobalConstants.StandartGameTotalBoardCols - 2; i += 2)
            {
                var pawn = new Pawn(player.Color);
                player.AddFigure(pawn);
                var position = new Position(chessRow, (char)(i + 'a'));
                board.AddFigure(pawn, position);
            }

            // TODO: Remove
            //// For testing only
            //var pawn = new Pawn(player.Color);
            //player.AddFigure(pawn);
            //var position = new Position(8, (char)(0 + 'a'));
            //board.AddFigure(pawn, position);

            //pawn = new Pawn(player.Color);
            //player.AddFigure(pawn);
            //position = new Position(8, (char)(2 + 'a'));
            //board.AddFigure(pawn, position);

            //pawn = new Pawn(player.Color);
            //player.AddFigure(pawn);
            //position = new Position(8, (char)(4 + 'a'));
            //board.AddFigure(pawn, position);

            //pawn = new Pawn(player.Color);
            //player.AddFigure(pawn);
            //position = new Position(6, (char)(4 + 'a'));
            //board.AddFigure(pawn, position);
        }
开发者ID:King-Survival-3,项目名称:HQC-Teamwork-2015,代码行数:32,代码来源:KingSurvivalGameInitializationStrategy.cs

示例2: AddFigureToBoard

        public void AddFigureToBoard(IPlayer firstPlayser, IPlayer secondPlayer, IBoard board, string fen)
        {
            var splitedFen = fen.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
            var index = 0;

            for (int row = splitedFen.Length - 1; row >= 0; row--)
            {
                var currentRow = this.MakeRow(splitedFen[row]);

                for (int col = 0; col < currentRow.Length; col++)
                {
                    if (currentRow[col] == Pown)
                    {
                        var pawn = new Pawn(secondPlayer.Color);
                        secondPlayer.AddFigure(pawn);
                        var position = new Position(index + 1, (char)(col + 'a'));
                        board.AddFigure(pawn, position);
                    }
                    else if (currentRow[col] == King)
                    {
                        var figureInstance = new King(firstPlayser.Color);
                        firstPlayser.AddFigure(figureInstance);
                        var position = new Position(index + 1, (char)(col + 'a'));
                        board.AddFigure(figureInstance, position);
                    }
                }

                index++;
            }
        }
开发者ID:King-Survival-3,项目名称:HQC-Teamwork-2015,代码行数:30,代码来源:KingSurvivalGameWebInitializationStrategy.cs

示例3: AddKingToBoardRow

 private void AddKingToBoardRow(IPlayer player, IBoard board, int chessRow, char chessCol)
 {
     var figureInstance = new King(player.Color);
         player.AddFigure(figureInstance);
         var position = new Position(chessRow, chessCol);
         board.AddFigure(figureInstance, position);
 }
开发者ID:King-Survival-3,项目名称:HQC-Teamwork-2015,代码行数:7,代码来源:KingSurvivalGameInitializationStrategy.cs

示例4: AddPawnsToBoardRow

 private void AddPawnsToBoardRow(IPlayer player, IBoard board, int chessRow)
 {
     for (int i = 0; i < GlobalConstants.StandartGameTotalBoardCols; i++)
     {
         var pawn = new Pawn(player.Color);
         player.AddFigure(pawn);
         var position = new Position(chessRow, (char)(i + 'a'));
         board.AddFigure(pawn, position);
     }
 }
开发者ID:King-Survival-3,项目名称:HQC-Teamwork-2015,代码行数:10,代码来源:StandartStartGameInitializationStrategy.cs

示例5: AddPawnsToBoardRow

 private void AddPawnsToBoardRow(IPlayer player, IBoard board, int chessRow)
 {
     for (int i = 0; i < BoardTotalRowsAndCols; i++)
     {
         var pawn = new Pawn(player.Color);
         player.AddFigure(pawn);
         var position = new Position(chessRow, (char)(i + 'a'));
         board.AddFigure(pawn, position);
     }
 }
开发者ID:totkov,项目名称:ChessGameEngine,代码行数:10,代码来源:StandardStartGameInitializationStrategy.cs

示例6: AddArmyToBoardRow

 private void AddArmyToBoardRow(IPlayer player, IBoard board, int chessRow)
 {
     for (int i = 0; i < GlobalConstants.StandartGameTotalBoardCols; i++)
     {
         var figureType = this.figureTypes[i];
         var figureInstance = (IFigure)Activator.CreateInstance(figureType, player.Color);
         player.AddFigure(figureInstance);
         var position = new Position(chessRow, (char)(i + 'a'));
         board.AddFigure(figureInstance, position);
     }
 }
开发者ID:King-Survival-3,项目名称:HQC-Teamwork-2015,代码行数:11,代码来源:StandartStartGameInitializationStrategy.cs

示例7: MoveRookCastle

        private void MoveRookCastle(Move move, IPlayer attacker)
        {
            var isLongCastle = move.From.Col > move.To.Col;
            var rookRow = move.From.Row;
            var rookFromCol = isLongCastle ? 0 : 7;
            var rookToCol = isLongCastle ? move.From.Col - 1 : move.From.Col + 1;
            var rook = this.gameBoard.SeeFigureOnPosition(rookRow, rookFromCol);

            var rookFromPosition = new Position(rookRow, rookFromCol);
            var rookToPosition = new Position(rookRow, rookToCol);
            var rookMove = new Move(rookFromPosition, rookToPosition);

            this.MoveFigures(rookMove, rook);
            attacker.RemoveFigure(rookMove.From);
            attacker.AddFigure(rookMove.To, rook);
        }
开发者ID:zhenyaracheva,项目名称:Chess,代码行数:16,代码来源:ChessStandardGame.cs


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