using UnityEngine; namespace Unity.U2D.Animation.Sample.Dependency { [ExecuteInEditMode] internal class AnimationSampleDependency : MonoBehaviour { enum Dependency { None, PsdImporter, AssetBundle } [SerializeField] GameObject errorUI = null; [SerializeField] Dependency dependency = Dependency.None; void Update() { var hasDependencyInstalled = HasDependencyInstalled(); if(errorUI != null) errorUI.SetActive(!hasDependencyInstalled); } bool HasDependencyInstalled() { switch (dependency) { case Dependency.PsdImporter: #if PSDIMPORTER_ENABLED return true; #else return false; #endif case Dependency.AssetBundle: #if ASSETBUNDLE_ENABLED return true; #else return false; #endif } return true; } } }