public override void OnInspectorGUI() { EditorGUI.BeginChangeCheck(); if (_boolCheck.AnyIsTrue(_typeObjectiveProperty.boolValue, _typePlaceholderProperty.boolValue)) { if (_clearProperty.boolValue = GUILayout.Button("Clear")) { Clear(); } return; } if (_typePlaceholderProperty.boolValue = EditorGUILayout.Toggle("Set As Placeholder", _typePlaceholderProperty.boolValue)) { SetType(typeof(TypePlaceHolder)); } if (_typeObjectiveProperty.boolValue = EditorGUILayout.Toggle("Set As Objective", _typeObjectiveProperty.boolValue)) { SetType(typeof(TypeObjective)); } void Clear() { _clearProperty.boolValue = false; _typePlaceholderProperty.boolValue = false; _typeObjectiveProperty.boolValue = false; serializedObject.ApplyModifiedProperties(); DestroyComponent(); } if (EditorGUI.EndChangeCheck()) { serializedObject.ApplyModifiedProperties(); } }