Beispiel #1
0
 void Awake()
 {
     if (_gameBuildSettings == null)
     {
         _gameBuildSettings = GameBuildSettings.GetDefault();
     }
 }
    public static GameBuildSettings GetDefault()
    {
        string            objectName = "cl.munditodt.gamebuildsettings";
        string            path       = "Assets/GameBuildSettings.asset";
        GameBuildSettings data       = null;

        // Try to get it
        if (EditorBuildSettings.TryGetConfigObject <GameBuildSettings>(objectName, out data))
        {
            return(data);
        }

        // If not, try to search the asset
        if (File.Exists(path))
        {
            data = AssetDatabase.LoadAssetAtPath <GameBuildSettings>(path);
        }

        // Create new if nothing exists
        if (data == null)
        {
            // Show dialog and save
            path = EditorUtility.SaveFilePanelInProject("New Build Settings File", "GameBuildSettings", "asset", "Select Config File Asset", "Assets");
            // Initialize
            data = ScriptableObject.CreateInstance <GameBuildSettings>();
            // Create and save
            AssetDatabase.CreateAsset(data, path);
        }

        EditorBuildSettings.AddConfigObject(objectName, data, false);
        return(data);
    }