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

SouthWest() private method

private SouthWest ( 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 SouthWest(Board board, char i, int currentCell, Figure currentFigure)
        {
            int l = currentCell - 1;
            var k = (char)(i - 1);
            for (; k >= 'a' && l >= 1; )
            {
                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;
                }
            }
        }