for (auto& m : *this)
if constexpr (Type == CAPTURES)
- m.value = (7 * int(PieceValue[MG][pos.piece_on(to_sq(m))])
+ m.value = (7 * int(PieceValue[pos.piece_on(to_sq(m))])
+ (*captureHistory)[pos.moved_piece(m)][to_sq(m)][type_of(pos.piece_on(to_sq(m)))]) / 16;
else if constexpr (Type == QUIETS)
else // Type == EVASIONS
{
if (pos.capture_stage(m))
- m.value = PieceValue[MG][pos.piece_on(to_sq(m))]
+ m.value = PieceValue[pos.piece_on(to_sq(m))]
- Value(type_of(pos.moved_piece(m)))
+ (1 << 28);
else