Chess.Domain.GameManager.ValidateIsLegalMove C# (CSharp) Method

ValidateIsLegalMove() private method

private ValidateIsLegalMove ( Move move, ChessPiece piece ) : void
move Chess.Data.Entities.Move
piece Chess.Data.Entities.ChessPiece
return void
        private void ValidateIsLegalMove(Move move, ChessPiece piece)
        {
            var teamName = Enum.GetName(typeof(Team), piece.Team);
            var pieceName = Enum.GetName(typeof(PieceType), piece.PieceType);

            var orderedMoves = Game.Moves.OrderBy(i => i.MoveId);

            if (!piece.IsLegalMove(_board.Squares, move, orderedMoves))
                throw new Exception("This is not a legal move for a " + teamName + " " + pieceName + ".");
        }