From e73b3387632709982d8586bb34c62db186740e58 Mon Sep 17 00:00:00 2001
From: Sam Moore <matches@ucc.asn.au>
Date: Fri, 2 Mar 2012 22:21:05 +0800
Subject: [PATCH] Made printed board consistent with graphical board

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]
---
 judge/manager/stratego.cpp | 5 +++--
 judge/manager/stratego.h   | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/judge/manager/stratego.cpp b/judge/manager/stratego.cpp
index 7894378..c9716cf 100644
--- a/judge/manager/stratego.cpp
+++ b/judge/manager/stratego.cpp
@@ -157,7 +157,7 @@ void Board::Print(FILE * stream, const Piece::Colour & reveal)
  * @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)
 	{
@@ -168,7 +168,8 @@ void Board::PrintPretty(FILE * stream, const Piece::Colour & reveal)
 			{
 				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)	
 				{
diff --git a/judge/manager/stratego.h b/judge/manager/stratego.h
index 098540c..f439e80 100644
--- a/judge/manager/stratego.h
+++ b/judge/manager/stratego.h
@@ -109,7 +109,7 @@ class Board
 		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
-- 
GitLab