private void OnInspectorUpdate() { if (!_scriptingDefinesScriptableObject) { return; } if (_defineToAdd != null) { _scriptingDefinesScriptableObject.Add(_defineToAdd); _defineToAdd = null; } if (_indexToDelete.HasValue) { _scriptingDefinesScriptableObject.RemoveAt(_indexToDelete.Value); _indexToDelete = null; } if (!_applyScriptingDefines) { return; } _applyScriptingDefines = false; string[] scriptingDefines = _scriptingDefinesScriptableObject.availableScriptingDefines.FilterMap((ScriptDefineInfo value, out string result) => { result = value.enabled ? value.name : null; return(value.enabled); }); PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, scriptingDefines); AssetDatabase.RefreshSettings(); }