I made the graphical board draw function reveal pieces that had been involved in combat.
But I didn't reflect this in the printed board, until now.
Pointed out by [SLX]
* @param stream - the stream to print information to
* @param reveal - Pieces matching this colour will have their identify revealed, other pieces will be shown as '#'
*/
-void Board::PrintPretty(FILE * stream, const Piece::Colour & reveal)
+void Board::PrintPretty(FILE * stream, const Piece::Colour & reveal, bool showRevealed)
{
for (int y=0; y < height; ++y)
{
{
fprintf(stream, ".");
}
- else if (piece->colour != Piece::NONE && (piece->colour == reveal || reveal == Piece::BOTH))
+ else if ((piece->colour != Piece::NONE && (piece->colour == reveal || reveal == Piece::BOTH))
+ || (piece->beenRevealed && showRevealed))
{
switch (piece->colour)
{
virtual ~Board(); //Destructor
void Print(FILE * stream, const Piece::Colour & reveal=Piece::BOTH); //Print board
- void PrintPretty(FILE * stream, const Piece::Colour & reveal=Piece::BOTH); //Print board using colour
+ void PrintPretty(FILE * stream, const Piece::Colour & reveal=Piece::BOTH, bool showRevealed=true); //Print board using colour
#ifdef BUILD_GRAPHICS
void Draw(const Piece::Colour & reveal=Piece::BOTH, bool showRevealed = true); //Draw board