Skip to content

Commit

Permalink
do this at once instead of calling the same method twice
Browse files Browse the repository at this point in the history
  • Loading branch information
float3 committed Feb 10, 2024
1 parent 631f8c0 commit 76925fd
Showing 1 changed file with 16 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,38 +4,36 @@
using UnityEditor;
using UnityEngine;

namespace AudioLink.Editor
{
namespace AudioLink.Editor {
[InitializeOnLoad]
public class AudioLinkDefineManager
{
static AudioLinkDefineManager()
{
AddDefineIfMissing(EditorUserBuildSettings.selectedBuildTargetGroup, "AUDIOLINK");
AddDefineIfMissing(EditorUserBuildSettings.selectedBuildTargetGroup, "AUDIOLINK_V1");
public class AudioLinkDefineManager {
static AudioLinkDefineManager() {
AddDefinesIfMissing(EditorUserBuildSettings.selectedBuildTargetGroup, new string[] { "AUDIOLINK", "AUDIOLINK_V1" });
Shader.EnableKeyword("AUDIOLINK_IMPORTED");
}

private static void AddDefineIfMissing(BuildTargetGroup buildTarget, string newDefine)
{
private static void AddDefinesIfMissing(BuildTargetGroup buildTarget, params string[] newDefines) {
bool definesChanged = false;
string existingDefines = PlayerSettings.GetScriptingDefineSymbolsForGroup(buildTarget);
HashSet<string> defineSet = new HashSet<string>();

if (existingDefines.Length > 0)
if (existingDefines.Length > 0) {
defineSet = new HashSet<string>(existingDefines.Split(';'));
}

if (defineSet.Add(newDefine))
definesChanged = true;
foreach (string newDefine in newDefines) {
if (defineSet.Add(newDefine)) {
definesChanged = true;
}
}

if (definesChanged)
{
if (definesChanged) {
string finalDefineString = string.Join(";", defineSet.ToArray());
PlayerSettings.SetScriptingDefineSymbolsForGroup(buildTarget, finalDefineString);
Debug.LogFormat("Set Scripting Define Symbols for selected build target ({0}) to: {1}",
buildTarget.ToString(), finalDefineString);
Debug.LogFormat("Set Scripting Define Symbols for selected build target ({0}) to: {1}", buildTarget.ToString(), finalDefineString);
}
}
}

}
#endif
#endif

0 comments on commit 76925fd

Please sign in to comment.