mirror of
https://github.com/sockspls/badfish
synced 2025-05-02 09:39:36 +00:00
Fix regression in move_to_san()
Broken since commit 628808a113
No functional change.
Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
parent
520e680278
commit
f0db6a6c0b
1 changed files with 5 additions and 4 deletions
|
@ -75,7 +75,7 @@ const string move_to_uci(Move m, bool chess960) {
|
||||||
string move = square_to_string(from) + square_to_string(to);
|
string move = square_to_string(from) + square_to_string(to);
|
||||||
|
|
||||||
if (type_of(m) == PROMOTION)
|
if (type_of(m) == PROMOTION)
|
||||||
move += PieceToChar[promotion_type(m) + 7]; // Lower case
|
move += PieceToChar[make_piece(BLACK, promotion_type(m))]; // Lower case
|
||||||
|
|
||||||
return move;
|
return move;
|
||||||
}
|
}
|
||||||
|
@ -117,20 +117,21 @@ const string move_to_san(Position& pos, Move m) {
|
||||||
Square from = from_sq(m);
|
Square from = from_sq(m);
|
||||||
Square to = to_sq(m);
|
Square to = to_sq(m);
|
||||||
Piece pc = pos.piece_on(from);
|
Piece pc = pos.piece_on(from);
|
||||||
|
PieceType pt = type_of(pc);
|
||||||
|
|
||||||
if (type_of(m) == CASTLE)
|
if (type_of(m) == CASTLE)
|
||||||
san = to > from ? "O-O" : "O-O-O";
|
san = to > from ? "O-O" : "O-O-O";
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (type_of(pc) != PAWN)
|
if (pt != PAWN)
|
||||||
{
|
{
|
||||||
san = PieceToChar[pc];
|
san = PieceToChar[pt]; // Upper case
|
||||||
|
|
||||||
// Disambiguation if we have more then one piece with destination 'to'
|
// Disambiguation if we have more then one piece with destination 'to'
|
||||||
// note that for pawns is not needed because starting file is explicit.
|
// note that for pawns is not needed because starting file is explicit.
|
||||||
ambiguousMove = ambiguousFile = ambiguousRank = false;
|
ambiguousMove = ambiguousFile = ambiguousRank = false;
|
||||||
|
|
||||||
attackers = (pos.attacks_from(pc, to) & pos.pieces(us)) ^ from;
|
attackers = (pos.attacks_from(pc, to) & pos.pieces(us, pt)) ^ from;
|
||||||
|
|
||||||
while (attackers)
|
while (attackers)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue