Bring back just bishop pins
authorGary Linscott <glinscott@gmail.com>
Sat, 26 Jan 2013 20:35:00 +0000 (15:35 -0500)
committerGary Linscott <glinscott@gmail.com>
Sat, 26 Jan 2013 20:35:00 +0000 (15:35 -0500)
src/evaluate.cpp

index 984a85a65e0492c3daaa46ddc72f06709ae32487..e29b9b0f43ba9306fc39425a4bdadec829b9244d 100644 (file)
@@ -577,6 +577,12 @@ Value do_evaluate(const Position& pos, Value& margin) {
 
         mobility += MobilityBonus[Piece][mob];
 
+        if (Piece == BISHOP && (PseudoAttacks[Piece][pos.king_square(Them)] & s)) {
+             const Bitboard between = BetweenBB[s][pos.king_square(Them)] & pos.pieces();
+             if (!more_than_one(between))
+                 score += make_score(25, 25);
+        }
+
         // Decrease score if we are attacked by an enemy pawn. Remaining part
         // of threat evaluation must be done later when we have full attack info.
         if (ei.attackedBy[Them][PAWN] & s)