position: Fix print format

This commit is contained in:
Calcitem 2021-01-17 01:18:52 +08:00
parent 06be0b30d2
commit 3aa6c6ccca
1 changed files with 28 additions and 13 deletions

View File

@ -119,7 +119,7 @@ std::ostream &operator<<(std::ostream &os, const Position &pos)
| | X-X-X | |
X-X-X X-X-X
| | X-X-X | |
| |/ \| |
| |/ | \| |
| X - X - X |
|/ | \|
X --- X --- X
@ -127,18 +127,33 @@ std::ostream &operator<<(std::ostream &os, const Position &pos)
#define P(s) PieceToChar(pos.piece_on(Square(s)))
os << "\n";
os << P(31) << " --- " << P(24)<< " --- " << P(25) << "\n";
os << "|\\ | /|\n";
os << "| " << P(23) << " - " << P(16) << " - " << P(17) << " |\n";
os << "| |\\ | /| |\n";
os << "| | " << P(15) << "-" << P(8) << "-" << P(9) << " | |\n";
os << P(30) << "-" << P(22) << "-" << P(14) << " " << P(10) << "-" << P(18) << "-" << P(26) << "\n";
os << "| | " << P(13) << "-" << P(12) << "-" << P(11) << " | |\n";
os << "| |/ \\| |\n";
os << "| " << P(21) << " - " << P(20) << " - " << P(19) << " |\n";
os << "|/ | \\|\n";
os << P(29) << " --- " << P(28) << " --- " << P(27) << "\n";
if (rule.hasObliqueLines) {
os << "\n";
os << P(31) << " --- " << P(24) << " --- " << P(25) << "\n";
os << "|\\ | /|\n";
os << "| " << P(23) << " - " << P(16) << " - " << P(17) << " |\n";
os << "| |\\ | /| |\n";
os << "| | " << P(15) << "-" << P(8) << "-" << P(9) << " | |\n";
os << P(30) << "-" << P(22) << "-" << P(14) << " " << P(10) << "-" << P(18) << "-" << P(26) << "\n";
os << "| | " << P(13) << "-" << P(12) << "-" << P(11) << " | |\n";
os << "| |/ | \\| |\n";
os << "| " << P(21) << " - " << P(20) << " - " << P(19) << " |\n";
os << "|/ | \\|\n";
os << P(29) << " --- " << P(28) << " --- " << P(27) << "\n";
} else {
os << "\n";
os << P(31) << " --- " << P(24) << " --- " << P(25) << "\n";
os << "| | |\n";
os << "| " << P(23) << " - " << P(16) << " - " << P(17) << " |\n";
os << "| | | | |\n";
os << "| | " << P(15) << "-" << P(8) << "-" << P(9) << " | |\n";
os << P(30) << "-" << P(22) << "-" << P(14) << " " << P(10) << "-" << P(18) << "-" << P(26) << "\n";
os << "| | " << P(13) << "-" << P(12) << "-" << P(11) << " | |\n";
os << "| | | | |\n";
os << "| " << P(21) << " - " << P(20) << " - " << P(19) << " |\n";
os << "| | |\n";
os << P(29) << " --- " << P(28) << " --- " << P(27) << "\n";
}
#undef P