Skip to content

Commit 3106329

Browse files
committed
Fix getting and settings defines in Unity 2023+
1 parent 193cfac commit 3106329

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

Assets/Editor Toolbox/Editor/Utilities/ScriptingUtility.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,32 @@
22
using System.Linq;
33

44
using UnityEditor;
5+
using UnityEditor.Build;
56

67
namespace Toolbox.Editor
78
{
89
public static class ScriptingUtility
910
{
1011
public static List<string> GetDefines()
1112
{
13+
#if UNITY_2023_1_OR_NEWER
14+
var target = NamedBuildTarget.FromBuildTargetGroup(EditorUserBuildSettings.selectedBuildTargetGroup);
15+
var defines = PlayerSettings.GetScriptingDefineSymbols(target);
16+
#else
1217
var defines = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup);
18+
#endif
1319
return defines.Split(';').ToList();
1420
}
1521

1622
public static void SetDefines(List<string> definesList)
1723
{
1824
var defines = string.Join(";", definesList.ToArray());
25+
#if UNITY_2023_1_OR_NEWER
26+
var target = NamedBuildTarget.FromBuildTargetGroup(EditorUserBuildSettings.selectedBuildTargetGroup);
27+
PlayerSettings.SetScriptingDefineSymbols(target, defines);
28+
#else
1929
PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, defines);
30+
#endif
2031
}
2132

2233
public static void AppendDefine(string define)

0 commit comments

Comments
 (0)