+ attackers &= occ; // Remove the moving piece
+
+ // If we don't have any attacker but the moving piece (common case)
+ // then we loose our piece and gain the opponent attacked one.
+ // Note that this is not perfect! It does not detect x-rays of
+ // an our piece behind an opposite one. But is a very rare case.
+ if ((attackers & pieces_of_color(us)) == EmptyBoardBB)
+ return seeValues[capture] - seeValues[piece];
+