TurboSchach/Chessboard/ChessboardVisualizerText.cpp
2025-01-14 06:13:47 +01:00

92 lines
2.5 KiB
C++

#include "../Chessboard/ChessboardVisualizerText.hpp"
#include "../ChessPieces/ChessPiecePosition.hpp"
/*void ChessboardVisualizerText::Draw(Chessboard* chessboard) {
std::cout << "\033[2J"; // clear the console
std::cout << std::endl;
std::cout << " " << chessboard->GetPlayer(ChessPieceColor::White)->GetName() << " vs. " << chessboard->GetPlayer(ChessPieceColor::Black)->GetName();
std::cout << std::endl;
for (int rank = 8; rank >= 1; rank--) {
if (rank == 8) {
for (int i = 0; i < 8; i++) {
if (i == 0) {
std::cout << " " << " " << " ";
std::cout << "\u250F";
} else {
std::cout << "\u2533";
}
std::cout << "\u2501" << "\u2501" << "\u2501";
if (i == 7) {
std::cout << "\u2513";
}
}
std::cout << std::endl;
}
for (char file = 'A'; file <= 'H'; file++) {
if (file == 'A') { // Beginn der Zeile
std::cout << " " << rank << " ";
std::cout << "\u2503";
}
ChessPiecePosition* position = new ChessPiecePosition(file, rank);
if (chessboard->IsEmptyField(position)) {
std::cout << " " << " " << " ";
} else {
ChessPiece* piece = chessboard->GetChessPiece(position);
std::cout << " " << piece->GetUnicode() << " ";
}
std::cout << "\u2503";
}
std::cout << std::endl;
if (rank != 1) {
for (int i = 0; i < 8; i++) {
if (i == 0) {
std::cout << " " << " " << " ";
std::cout << "\u2523";
} else {
std::cout << "\u254B";
}
std::cout << "\u2501" << "\u2501" << "\u2501";
if (i == 7) {
std::cout << "\u252B";
}
}
std::cout << std::endl;
} else {
for (int i = 0; i < 8; i++) {
if (i == 0) {
std::cout << " " << " " << " ";
std::cout << "\u2517";
} else {
std::cout << "\u253B";
}
std::cout << "\u2501" << "\u2501" << "\u2501";
if (i == 7) {
std::cout << "\u251B";
}
}
std::cout << std::endl;
for (char file = 'A'; file <= 'H'; file++) {
if (file == 'A') {
std::cout << " " << " " << " ";
std::cout << " ";
} else {
std::cout << " ";
}
std::cout << " " << file << " ";
if (file == 'H') {
std::cout << " ";
}
}
std::cout << std::endl;
}
}
std::cout << std::endl;
}
*/