private static void RemoveBlock(Vector3 position) { for (int i = 0; i < LevelParent.childCount; i++) { float distanceToBlock = Vector3.Distance(LevelParent.GetChild(i).transform.position, position); if (distanceToBlock <= 4) { Undo.DestroyObjectImmediate(LevelParent.GetChild(i).gameObject); UnityEditor.SceneManagement.EditorSceneManager.MarkAllScenesDirty(); return; } } }
public static void RemoveObject(Vector3 pos) { if (LevelParent.childCount <= 0) { return; } for (int i = 0; i < LevelParent.childCount; i++) { Renderer renderer = LevelParent.GetChild(i).GetComponent <Renderer>(); float distanceToObject = Vector3.Distance(renderer.bounds.min, pos); if (distanceToObject < 1.0f) { Undo.DestroyObjectImmediate(LevelParent.GetChild(i).gameObject); UnityEditor.SceneManagement.EditorSceneManager.MarkAllScenesDirty(); return; } } }