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); } } }