Chess.Data.Entities.ChessPiece.GetHorizontalMoves C# (CSharp) Method

GetHorizontalMoves() protected method

protected GetHorizontalMoves ( Square board, int row, int column, int>.List endPositions ) : void
board Square
row int
column int
endPositions int>.List
return void
        protected void GetHorizontalMoves(Square[][] board, int row, int column, List<Tuple<int, int>> endPositions)
        {
            ChessPiece occupant;
            for (var r = row; r < 8; r++)
            {
                occupant = board[r][column].ChessPiece;
                if (occupant != null && occupant.Team == Team) break;
                endPositions.Add(new Tuple<int, int>(r, column));
                if (occupant != null && occupant.Team != Team) break;
            }
            for (var r = row; r >= 0; r--)
            {
                occupant = board[r][column].ChessPiece;
                if (occupant != null && occupant.Team == Team) break;
                endPositions.Add(new Tuple<int, int>(r, column));
                if (occupant != null && occupant.Team != Team) break;
            }
        }