ChessServer.GameLogic.AttackMap.NorthWest C# (CSharp) Method

NorthWest() private method

private NorthWest ( Board board, char i, int currentCell, Figure currentFigure ) : void
board Protocol.GameObjects.Board
i char
currentCell int
currentFigure Protocol.GameObjects.Figure
return void
        private void NorthWest(Board board, char i, int currentCell, Figure currentFigure)
        {
            int l = currentCell + 1;
            var k = (char)(i - 1);
            for (; k >= 'a' && l <= Board.BoardSize; )
            {
                Figure f1 = board[k.ToString(CultureInfo.InvariantCulture) + l];

                if (f1.GetType() == typeof(FigureNone))
                {
                    Attackers[k - 'a', l - 1].Add(currentFigure);
                    k--;
                    l++;
                }
                else if (f1.Side != currentFigure.Side)
                {
                    Attackers[k - 'a', l - 1].Add(currentFigure);
                    break;
                }
                else
                {
                    break;
                }
            }
        }