private char GetCellSymbol(Cell cell)
        {
            if (cell.IsDestroyed)
            {
                return 'X';
            }
            else if (cell is TinyMine)
            {
                return '1';
            }
            else if (cell is SmallMine)
            {
                return '2';
            }
            else if (cell is MediumMine)
            {
                return '3';
            }
            else if (cell is BigMine)
            {
                return '4';
            }
            else if (cell is GiantMine)
            {
                return '5';
            }
            else if (cell is EmptyCell)
            {
                return '-';
            }

            throw new NotImplementedException("Unknown Cell Type.");
        }
 public bool Equal(Cell c)
 {
     return (tile_x == c.tile_x && tile_y == c.tile_y);
 }
        private ConsoleColor GetCellColor(Cell cell)
        {
            if (cell.IsDestroyed)
            {
                return ConsoleColor.Gray;
            }
            else if (cell is TinyMine)
            {
                return ConsoleColor.Cyan;
            }
            else if (cell is SmallMine)
            {
                return ConsoleColor.Blue;
            }
            else if (cell is MediumMine)
            {
                return ConsoleColor.Yellow;
            }
            else if (cell is BigMine)
            {
                return ConsoleColor.Magenta;
            }
            else if (cell is GiantMine)
            {
                return ConsoleColor.Red;
            }
            else if (cell is EmptyCell)
            {
                return ConsoleColor.Black;
            }

            throw new NotImplementedException("Unknown Cell Type.");
        }
 public Cell(Cell c)
 {
     tile_x = c.tile_x;
     tile_y = c.tile_y;
 }