private List <GameObject> InvertSelection(List <GameObject> selectedGameObjects) { List <GameObject> invertedSelection = new List <GameObject>(); foreach (GameObject obj in UtilitiesToolExtensions.GetAllGameObjects()) { if (!selectedGameObjects.Contains(obj)) { invertedSelection.Add(obj); } } return(invertedSelection); }
public List <GameObject> Select() { List <GameObject> filteredGameObjects = new List <GameObject>(); GameObject[] allGameObjects = UtilitiesToolExtensions.GetAllGameObjects(); foreach (var go in allGameObjects) { if (_isPrefab) { PrefabAssetType assetType = PrefabUtility.GetPrefabAssetType(go); if (assetType == PrefabAssetType.Regular) { filteredGameObjects.Add(go); continue; } } if (_isStatic) { if (go.isStatic == true) { filteredGameObjects.Add(go); continue; } } if (_isActive) { if (go.activeInHierarchy == true) { filteredGameObjects.Add(go); continue; } } switch (_objecttypesIndex) { case 0: break; case 1: CheckTypeAndAddToList <MeshRenderer>(go, filteredGameObjects); break; case 2: CheckTypeAndAddToList <Light>(go, filteredGameObjects); break; case 3: CheckTypeAndAddToList <Terrain>(go, filteredGameObjects); break; case 4: CheckTypeAndAddToList <Camera>(go, filteredGameObjects); break; case 5: CheckTypeAndAddToList <AudioSource>(go, filteredGameObjects); break; case 6: CheckTypeAndAddToList <ParticleSystem>(go, filteredGameObjects); break; case 7: if (CheckEmptyGameObject(go)) { filteredGameObjects.Add(go); } break; case 8: if (CheckEmptyGameObject(go) && go.transform.childCount == 0) { filteredGameObjects.Add(go); } break; case 9: CheckTypeAndAddToList <ReflectionProbe>(go, filteredGameObjects); break; case 10: CheckTypeAndAddToList <WindZone>(go, filteredGameObjects); break; default: break; } } return(filteredGameObjects); }