43 lines
1.3 KiB
C#
43 lines
1.3 KiB
C#
using UnityEditor;
|
|
|
|
namespace Gley.Common
|
|
{
|
|
public class PreprocessorDirective
|
|
{
|
|
public static void AddToPlatform(string directive, bool remove, BuildTargetGroup target)
|
|
{
|
|
string textToWrite = PlayerSettings.GetScriptingDefineSymbols(UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(target));
|
|
|
|
|
|
if (remove)
|
|
{
|
|
if (textToWrite.Contains(directive))
|
|
{
|
|
textToWrite = textToWrite.Replace(directive, "");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (!textToWrite.Contains(directive))
|
|
{
|
|
if (textToWrite == "")
|
|
{
|
|
textToWrite += directive;
|
|
}
|
|
else
|
|
{
|
|
textToWrite += "," + directive;
|
|
}
|
|
}
|
|
}
|
|
PlayerSettings.SetScriptingDefineSymbols(UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(target), textToWrite);
|
|
|
|
}
|
|
|
|
public static void AddToCurrent(string directive, bool remove)
|
|
{
|
|
AddToPlatform(directive, remove, EditorUserBuildSettings.selectedBuildTargetGroup);
|
|
}
|
|
}
|
|
}
|