public void Move(Direction direction)
 {
     if (GameModel.IsFinished() == false)
     {
         GameModel.Move(direction);
         Map = GameModel.GetMap().Updates;
         View.UpdateMap(Map);
         GameModel.GetMap().Updates = new List <MapItem>();
         View.GetGameStats(GameModel.GetMoveCount(), GameModel.GetMoveHistory());
         if (GameModel.IsFinished() == true)
         {
             string msg = String.Format("Nice! You completed the level in {0} moves!", GameModel.GetMoveCount());
             View.DisplayMessage(msg);
             View.UpdateMap(null);
         }
     }
 }