mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-19 00:26:33 +08:00
search_pv: an enpassant move is a capture
Fix the logic in search_pv and sp_search_pv An additional issue to consider is that a castle move is not a capture but destination square is not empty. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
@@ -1003,9 +1003,8 @@ namespace {
|
||||
movesSearched[moveCount++] = ss[ply].currentMove = move;
|
||||
|
||||
if (moveIsCapture)
|
||||
ss[ply].currentMoveCaptureValue = pos.midgame_value_of_piece_on(move_to(move));
|
||||
else if (move_is_ep(move))
|
||||
ss[ply].currentMoveCaptureValue = PawnValueMidgame;
|
||||
ss[ply].currentMoveCaptureValue =
|
||||
move_is_ep(move)? PawnValueMidgame : pos.midgame_value_of_piece_on(move_to(move));
|
||||
else
|
||||
ss[ply].currentMoveCaptureValue = Value(0);
|
||||
|
||||
@@ -1691,8 +1690,11 @@ namespace {
|
||||
|
||||
assert(move_is_ok(move));
|
||||
|
||||
ss[sp->ply].currentMoveCaptureValue = move_is_ep(move)?
|
||||
PawnValueMidgame : pos.midgame_value_of_piece_on(move_to(move));
|
||||
if (moveIsCapture)
|
||||
ss[sp->ply].currentMoveCaptureValue =
|
||||
move_is_ep(move)? PawnValueMidgame : pos.midgame_value_of_piece_on(move_to(move));
|
||||
else
|
||||
ss[sp->ply].currentMoveCaptureValue = Value(0);
|
||||
|
||||
lock_grab(&(sp->lock));
|
||||
int moveCount = ++sp->moves;
|
||||
|
||||
Reference in New Issue
Block a user