From 58f90b736bcd3cb0c966f217b700a92ae4e42ed7 Mon Sep 17 00:00:00 2001
From: Arseniy Shestakov <me@arseniyshestakov.com>
Date: Tue, 20 Sep 2016 10:49:29 +0300
Subject: [PATCH] New cheat vcmiungoliant: hide all tiles that out of sight
 radius

---
 server/CGameHandler.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/server/CGameHandler.cpp b/server/CGameHandler.cpp
index ed19e1894..20aa2a29b 100644
--- a/server/CGameHandler.cpp
+++ b/server/CGameHandler.cpp
@@ -4384,17 +4384,17 @@ void CGameHandler::playerMessage( PlayerColor player, const std::string &message
 		sr.res[Res::GOLD] += 100000; //100k
 		sendAndApply(&sr);
 	}
-	else if(message == "vcmieagles") //reveal FoW
+	else if(message == "vcmieagles" || message == "vcmiungoliant") //reveal or conceal FoW
 	{
 		FoWChange fc;
-		fc.mode = 1;
+		fc.mode = (message == "vcmieagles" ? 1 : 0);
 		fc.player = player;
 		auto  hlp_tab = new int3[gs->map->width * gs->map->height * (gs->map->twoLevel ? 2 : 1)];
 		int lastUnc = 0;
 		for(int i=0;i<gs->map->width;i++)
 			for(int j=0;j<gs->map->height;j++)
 				for(int k = 0; k < (gs->map->twoLevel ? 2 : 1); k++)
-					if(!gs->getPlayerTeam(fc.player)->fogOfWarMap.at(i).at(j).at(k))
+					if(!gs->getPlayerTeam(fc.player)->fogOfWarMap.at(i).at(j).at(k) || message == "vcmiungoliant")
 						hlp_tab[lastUnc++] = int3(i,j,k);
 		fc.tiles.insert(hlp_tab, hlp_tab + lastUnc);
 		delete [] hlp_tab;