using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEditor;
using UnityEngine;
namespace XRTool.Util
{
public class BuildInfo
{
///
public virtual BuildTarget BuildTarget { get; }
private string outputDirectory;
///
public IEnumerable Scenes { get; set; }
private const string EDITOR_PREF_BUILD_DIR = "BuildDeployWindow_BuildDir";
private const string EDITOR_PREF_INCREMENT_BUILD_VERSION = "BuildDeployWindow_IncrementBuildVersion";
public static string BuildDirectory
{
get => $"{EditorPreferences.Get(EDITOR_PREF_BUILD_DIR, "Builds")}/{EditorUserBuildSettings.activeBuildTarget}";
set => EditorPreferences.Set(EDITOR_PREF_BUILD_DIR, value.Replace($"/{EditorUserBuildSettings.activeBuildTarget}", string.Empty));
}
public string OutputDirectory
{
get => string.IsNullOrEmpty(outputDirectory) ? outputDirectory = BuildDirectory : outputDirectory;
set => outputDirectory = value;
}
/*
//buildReport = BuildPipeline.BuildPlayer(
// buildInfo.Scenes.ToArray(),
// buildInfo.OutputDirectory,
// buildInfo.BuildTarget,
// buildInfo.BuildOptions);
*/
public BuildInfo()
{
BuildTarget = EditorUserBuildSettings.activeBuildTarget;
Scenes = EditorBuildSettings.scenes.Where(scene => scene.enabled).Select(scene => scene.path);
}
}
}