//TODO: What determines a stalemate vs checkmate? public bool IsCheckMated() { return(IsInCheck && !ChessBoard.CanDefendKing(PieceColor)); }