X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fendgame.cpp;h=2a1614af09523ffddd725e4c7fc3a1117fcecaf5;hp=9e60503e98f5e07602ec1335956de559b01df181;hb=d12378497cb24f40d3510cdcfaecd1335f523196;hpb=c9e396b5424802b80e80394979ca84688b523244 diff --git a/src/endgame.cpp b/src/endgame.cpp index 9e60503e..2a1614af 100644 --- a/src/endgame.cpp +++ b/src/endgame.cpp @@ -166,6 +166,7 @@ Value Endgame::operator()(const Position& pos) const { if ( pos.count(strongSide) || pos.count(strongSide) + ||(pos.count(strongSide) && pos.count(strongSide)) || pos.bishop_pair(strongSide)) result += VALUE_KNOWN_WIN; @@ -478,7 +479,7 @@ ScaleFactor Endgame::operator()(const Position& pos) const { if ( r == RANK_6 && square_distance(bksq, queeningSq) <= 1 && rank_of(wksq) + tempo <= RANK_6 - && (rank_of(brsq) == RANK_1 || (!tempo && abs(file_of(brsq) - f) >= 3))) + && (rank_of(brsq) == RANK_1 || (!tempo && dist(file_of(brsq), f) >= 3))) return SCALE_FACTOR_DRAW; if ( r >= RANK_6 @@ -534,7 +535,7 @@ ScaleFactor Endgame::operator()(const Position& pos) const { { if (file_of(bksq) == file_of(wpsq)) return ScaleFactor(10); - if ( abs(file_of(bksq) - file_of(wpsq)) == 1 + if ( dist(file_of(bksq), file_of(wpsq)) == 1 && square_distance(wksq, bksq) > 2) return ScaleFactor(24 - 2 * square_distance(wksq, bksq)); } @@ -748,7 +749,7 @@ ScaleFactor Endgame::operator()(const Position& pos) const { && opposite_colors(ksq, wbsq) && ( bbsq == blockSq2 || (pos.attacks_from(blockSq2) & pos.pieces(weakSide, BISHOP)) - || abs(r1 - r2) >= 2)) + || dist(r1, r2) >= 2)) return SCALE_FACTOR_DRAW; else if ( ksq == blockSq2