if ( pos.piece_on(SQ_A1) == W_BISHOP
&& pos.piece_on(SQ_B2) == W_PAWN)
- correction += !pos.empty(SQ_B3) ? -CorneredBishop * 4
- : -CorneredBishop * 3;
+ correction -= CorneredBishop;
if ( pos.piece_on(SQ_H1) == W_BISHOP
&& pos.piece_on(SQ_G2) == W_PAWN)
- correction += !pos.empty(SQ_G3) ? -CorneredBishop * 4
- : -CorneredBishop * 3;
+ correction -= CorneredBishop;
if ( pos.piece_on(SQ_A8) == B_BISHOP
&& pos.piece_on(SQ_B7) == B_PAWN)
- correction += !pos.empty(SQ_B6) ? CorneredBishop * 4
- : CorneredBishop * 3;
+ correction += CorneredBishop;
if ( pos.piece_on(SQ_H8) == B_BISHOP
&& pos.piece_on(SQ_G7) == B_PAWN)
- correction += !pos.empty(SQ_G6) ? CorneredBishop * 4
- : CorneredBishop * 3;
+ correction += CorneredBishop;
- return pos.side_to_move() == WHITE ? Value(correction)
- : -Value(correction);
+ return pos.side_to_move() == WHITE ? Value(5 * correction)
+ : -Value(5 * correction);
}
} // namespace Eval