private void RemoveTile(Vector3 position) { int index = GridBase.Instance.storage.tilePositions.GetIndex(position); if (index > -1) { if (index == gridBase.storage.tilePositions.Count - 1) { TilePositionsProperty.arraySize--; } else { TilePositionsProperty.DeleteArrayElementAtIndex(index); } TilePositionsProperty.serializedObject.ApplyModifiedProperties(); meshPainter.UndrawTile(position); } }