public void revealCell(int idx)
        {
            if (!knownCells[idx])
            {
                IntVec3 cell = idxToCellCache[idx];

                knownCells[idx] = true;

                Designation designation = designationManager.DesignationAt(cell, DesignationDefOf.Mine);
                if (designation != null && cell.GetFirstMineable(map) == null)
                {
                    designation.Delete();
                }

                if (initialized)
                {
                    mapDrawer.MapMeshDirty(cell, SectionLayer_FoVLayer.mapMeshFlag, true, false);
                }

                List <CompHideFromPlayer> comps = compHideFromPlayerGrid[idx];
                int compCount = comps.Count;
                for (int i = 0; i < compCount; i++)
                {
                    comps[i].updateVisibility(true);
                }
            }
        }