BuildTargetRuntime BuildTargetListItem(Rect pos, BuildTargetRuntime itemValue) { int indentLevel = EditorGUI.indentLevel; EditorGUI.indentLevel = 0; BuildTargetRuntime target = (BuildTargetRuntime)EditorGUI.EnumPopup(pos, itemValue); EditorGUI.indentLevel = indentLevel; return(target); }
PlatformsConfiguration GetConfigurationFroBuildTarget(BuildTargetRuntime buildTarget) { foreach (var platform in Platforms) { if (platform.BuildTargets.Contains(buildTarget)) { return(platform); } } return(null); }
public static bool IsActive(this BuildConfiguration configuration, PlatformsConfiguration platformsConfiguration) { BuildTargetRuntime buildTarget = (BuildTargetRuntime)(int)EditorUserBuildSettings.activeBuildTarget; return(platformsConfiguration.BuildTargets.Contains(buildTarget)); }
public static void InitializeBuildData(this BuildConfiguration platformsConfiguration, BuildTargetRuntime builtTarget) { var sceneNames = new List <string>(); var sceneAssets = new List <AddressableSceneAsset>(); foreach (var scene in platformsConfiguration.DefaultScenes) { if (scene.Addressable) { string path = AssetDatabase.GUIDToAssetPath(scene.Guid); if (string.IsNullOrEmpty(path)) { continue; } sceneNames.Add(Path.GetFileNameWithoutExtension(path)); sceneAssets.Add(scene); } } foreach (var platform in platformsConfiguration.Platforms) { if (platform.BuildTargets.Contains(builtTarget)) { foreach (var scene in platform.Scenes) { if (scene.Addressable) { string path = AssetDatabase.GUIDToAssetPath(scene.Guid); if (string.IsNullOrEmpty(path)) { continue; } sceneNames.Add(Path.GetFileNameWithoutExtension(path)); sceneAssets.Add(scene); } } } } Debug.Log("Addressable Scenes: " + sceneNames.Count); Debug.Log($"Addressable Scenes List:\n{string.Join("\n", sceneAssets.Select(asset => AssetDatabase.GUIDToAssetPath(asset.Guid)))}"); platformsConfiguration.SetScenesConfig(sceneNames, sceneAssets); }