]> git.sesse.net Git - stockfish/blobdiff - src/evaluate.cpp
Simplify unstoppable condition
[stockfish] / src / evaluate.cpp
index 6cf7e4da58bf9a469512cf9179cfc4c2a74cffd7..0136db840f7031e5142919e9b97561d94b57496d 100644 (file)
@@ -197,7 +197,7 @@ namespace {
   const Score WeakQueen           = S(50, 10);
   const Score Hanging             = S(48, 27);
   const Score ThreatByPawnPush    = S(38, 22);
-  const Score Unstoppable         = S( 0, 20);
+  const Score Unstoppable         = S( 0, 45);
   const Score PawnlessFlank       = S(20, 80);
   const Score HinderPassedPawn    = S( 7,  0);
   const Score ThreatByRank        = S(16,  3);
@@ -855,12 +855,11 @@ Value Eval::evaluate(const Position& pos) {
   // If both sides have only pawns, score for potential unstoppable pawns
   if (!pos.non_pawn_material(WHITE) && !pos.non_pawn_material(BLACK))
   {
-      Bitboard b;
-      if ((b = ei.pi->passed_pawns(WHITE)) != 0)
-          score += Unstoppable * int(relative_rank(WHITE, frontmost_sq(WHITE, b)));
+      if (ei.pi->passed_pawns(WHITE))
+          score += Unstoppable;
 
-      if ((b = ei.pi->passed_pawns(BLACK)) != 0)
-          score -= Unstoppable * int(relative_rank(BLACK, frontmost_sq(BLACK, b)));
+      if (ei.pi->passed_pawns(BLACK))
+          score -= Unstoppable;
   }
 
   // Evaluate space for both sides, only during opening