48 lines
1.3 KiB
C#
48 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using UnityEditor.AddressableAssets.GUI;
|
|
using UnityEditor.AddressableAssets.Settings;
|
|
using UnityEditor.Build.Pipeline;
|
|
using UnityEditor.SceneManagement;
|
|
using UnityEngine;
|
|
|
|
namespace UnityEditor.AddressableAssets.Build.AnalyzeRules
|
|
{
|
|
class CheckSceneDupeDependencies : BundleRuleBase
|
|
{
|
|
public override bool CanFix
|
|
{
|
|
get { return false; }
|
|
}
|
|
|
|
public override string ruleName
|
|
{
|
|
get { return "Check Scene to Addressable Duplicate Dependencies"; }
|
|
}
|
|
|
|
public override List<AnalyzeResult> RefreshAnalysis(AddressableAssetSettings settings)
|
|
{
|
|
ClearAnalysis();
|
|
|
|
string[] scenePaths = (from editorScene in EditorBuildSettings.scenes
|
|
select editorScene.path).ToArray();
|
|
|
|
return CalculateBuiltInResourceDependenciesToBundleDependecies(settings, scenePaths);
|
|
}
|
|
|
|
public override void FixIssues(AddressableAssetSettings settings)
|
|
{
|
|
//Do nothing. There's nothing to fix.
|
|
}
|
|
}
|
|
|
|
[InitializeOnLoad]
|
|
class RegisterCheckSceneDupeDependencies
|
|
{
|
|
static RegisterCheckSceneDupeDependencies()
|
|
{
|
|
AnalyzeWindow.RegisterNewRule<CheckSceneDupeDependencies>();
|
|
}
|
|
}
|
|
}
|