| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- using System.Linq;
- using UnityEditor;
- using UnityEditor.Build;
- using UnityEngine;
- namespace ET
- {
- public static class DefineHelper
- {
- public static void EnableDefineSymbols(string symbols, bool enable)
- {
- Debug.Log($"EnableDefineSymbols {symbols} {enable}");
- string defines = PlayerSettings.GetScriptingDefineSymbols(NamedBuildTarget.FromBuildTargetGroup(EditorUserBuildSettings.selectedBuildTargetGroup));
- var ss = defines.Split(';').ToList();
- if (enable)
- {
- if (ss.Contains(symbols))
- {
- return;
- }
- ss.Add(symbols);
- }
- else
- {
- if (!ss.Contains(symbols))
- {
- return;
- }
- ss.Remove(symbols);
- }
- Debug.Log($"EnableDefineSymbols {symbols} {enable}");
- defines = string.Join(";", ss);
- PlayerSettings.SetScriptingDefineSymbols(NamedBuildTarget.FromBuildTargetGroup(EditorUserBuildSettings.selectedBuildTargetGroup), defines);
- AssetDatabase.SaveAssets();
- AssetDatabase.Refresh();
- }
- }
- }
|