gimm290-prototype/Assets/StarterAssets/Editor/ScriptingDefineUtils.cs

36 lines
1.5 KiB
C#

using UnityEditor;
namespace StarterAssets
{
public static class ScriptingDefineUtils
{
public static bool CheckScriptingDefine(string scriptingDefine)
{
BuildTargetGroup buildTargetGroup = EditorUserBuildSettings.selectedBuildTargetGroup;
var defines = PlayerSettings.GetScriptingDefineSymbolsForGroup(buildTargetGroup);
return defines.Contains(scriptingDefine);
}
public static void SetScriptingDefine(string scriptingDefine)
{
BuildTargetGroup buildTargetGroup = EditorUserBuildSettings.selectedBuildTargetGroup;
var defines = PlayerSettings.GetScriptingDefineSymbolsForGroup(buildTargetGroup);
if (!defines.Contains(scriptingDefine))
{
defines += $";{scriptingDefine}";
PlayerSettings.SetScriptingDefineSymbolsForGroup(buildTargetGroup, defines);
}
}
public static void RemoveScriptingDefine(string scriptingDefine)
{
BuildTargetGroup buildTargetGroup = EditorUserBuildSettings.selectedBuildTargetGroup;
var defines = PlayerSettings.GetScriptingDefineSymbolsForGroup(buildTargetGroup);
if (defines.Contains(scriptingDefine))
{
string newDefines = defines.Replace(scriptingDefine, "");
PlayerSettings.SetScriptingDefineSymbolsForGroup(buildTargetGroup, newDefines);
}
}
}
}