using namespace std;
-static const char* PieceToChar = " PNBRQK pnbrqk";
+static const char* PieceToChar[COLOR_NB] = { "PNBRQK", "pnbrqk" };
/// score_to_uci() converts a value to a string suitable for use with the UCI
string move = square_to_string(from) + square_to_string(to);
if (type_of(m) == PROMOTION)
- move += PieceToChar[make_piece(BLACK, promotion_type(m))]; // Lower case
+ move += PieceToChar[BLACK][promotion_type(m)]; // Lower case
return move;
}
{
if (pt != PAWN)
{
- san = PieceToChar[pt]; // Upper case
+ san = PieceToChar[WHITE][pt]; // Upper case
// Disambiguation if we have more then one piece with destination 'to'
// note that for pawns is not needed because starting file is explicit.
san += square_to_string(to);
if (type_of(m) == PROMOTION)
- san += string("=") + PieceToChar[promotion_type(m)];
+ san += string("=") + PieceToChar[WHITE][promotion_type(m)];
}
if (pos.move_gives_check(m, CheckInfo(pos)))