using System.Collections; using System.Collections.Generic; using UnityEngine; using System; using System.IO; using UnityEngine.U2D; // public class UILoader // { // readonly static string PREFAB_EXTERSION = ".prefab"; // readonly static string SPRITE_EXTERSION = ".png"; // readonly static string Spriteatlas_EXTERSION = ".spriteatlasv2"; // public static GameObject LoadWindow(string name) // { // GameObject window = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var isPriority = false;//PriorityWindowConfig.Get().priorityWindows.Contains(name); // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // isPriority ? ResourcesPath.UI_PRIORITYWINDOW_SUFFIX : ResourcesPath.UI_WINDOW_SUFFIX, "/", // name, // PREFAB_EXTERSION); // window = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // // var isPriority = PriorityWindowConfig.Get().priorityWindows.Contains(name); // var bundleName = "ui/window"; // var assetInfo = new AssetInfo(bundleName, name); // window = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as GameObject; // } // if (window == null) // { // Debug.LogErrorFormat("UILoader.LoadWindow() => 加载不到资源: {0}.", name); // } // return window; // } // public static void LoadWindowAsync(string _name, Action _callBack) // { // GameObject window = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var isPriority = PriorityWindowConfig.Get().priorityWindows.Contains(_name); // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // isPriority ? ResourcesPath.UI_PRIORITYWINDOW_SUFFIX : ResourcesPath.UI_WINDOW_SUFFIX, "/", // _name, // PREFAB_EXTERSION); // window = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // if (_callBack != null) // { // _callBack(window != null, window); // } // #endif // } // else // { // var isPriority = PriorityWindowConfig.Get().priorityWindows.Contains(_name); // var bundleName = isPriority ? StringUtility.Contact("ui/prioritywindow/", _name) : "ui/window"; // var assetInfo = new AssetInfo(bundleName, _name); // AssetBundleUtility.Instance.Co_LoadAsset(assetInfo, _callBack); // } // } // public static void UnLoadWindowAsset(string _assetName) // { // if (!AssetSource.uiFromEditor) // { // var isPriority = PriorityWindowConfig.Get().priorityWindows.Contains(_assetName); // var bundleName = isPriority ? StringUtility.Contact("ui/prioritywindow/", _assetName) : "ui/window"; // AssetBundleUtility.Instance.UnloadAsset(bundleName, _assetName); // } // } // public static void UnLoadPriorityWindow(string windowName) // { // if (!AssetSource.uiFromEditor) // { // var assetBundleName = StringUtility.Contact("ui/prioritywindow/", windowName.ToLower()); // AssetBundleUtility.Instance.UnloadAssetBundle(assetBundleName, true, false); // switch (windowName) // { // case "LoginWin": // AssetBundleUtility.Instance.UnloadAssetBundle("ui/sprite/login", true, false); // break; // case "SelectRoleWin": // case "CreateRoleWin": // AssetBundleUtility.Instance.UnloadAssetBundle("ui/sprite/createrole", true, false); // break; // } // } // } // public static GameObject LoadPrefab(string _name) // { // GameObject prefab = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // ResourcesPath.UI_PREFAB_SUFFIX, "/", // _name, // PREFAB_EXTERSION); // prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // var bundleName = ResourcesPath.UI_PREFAB_SUFFIX.ToLower(); // var assetInfo = new AssetInfo(bundleName, _name); // prefab = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as GameObject; // } // if (prefab == null) // { // Debug.LogErrorFormat("UILoader.LoadPrefab() => 加载不到资源: {0}.", _name); // } // return prefab; // } // public static void UnLoadPrefab(string _assetName) // { // if (!AssetSource.uiFromEditor) // { // AssetBundleUtility.Instance.UnloadAsset("ui/prefab", _assetName); // } // } // public static Sprite LoadSprite(string _iconKey) // { // var iconConfig = IconConfig.Get(_iconKey); // if (iconConfig == null) // { // return null; // } // return LoadSprite(iconConfig.folder, iconConfig.sprite); // } // public static Sprite LoadSprite(string _folder, string _file) // { // var folder = _folder; // var file = _file; // Sprite sprite = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var relativePath = folder; // var rootPath = ResourcesPath.UI_SPRITE_SUFFIX; // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // rootPath, "/", // relativePath, // Spriteatlas_EXTERSION); // var spriteAtlas = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // sprite = spriteAtlas.GetSprite(file); // #endif // } // else // { // var bundleName = StringUtility.Contact("ui/sprite/", folder.ToLower()); // //var assetInfo = new AssetInfo(bundleName, folder); // //var spriteAtlas = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo, typeof(SpriteAtlas)) as SpriteAtlas; // //sprite = spriteAtlas?.GetSprite(_file); // var assetInfo = new AssetInfo(bundleName, file); // sprite = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo, typeof(Sprite)) as Sprite; // } // if (sprite == null) // { // Debug.LogErrorFormat("UILoader.LoadSprite() => 加载不到资源: {0}.", file); // } // return sprite; // } // public static void UnLoadSprite(string _iconKey) // { // if (!AssetSource.uiFromEditor) // { // var iconConfig = IconConfig.Get(_iconKey); // if (iconConfig != null) // { // var bundleName = StringUtility.Contact("ui/sprite/", iconConfig.folder.ToLower()); // AssetBundleUtility.Instance.UnloadAsset(bundleName, iconConfig.sprite); // } // } // } // public static Font LoadFont(string _fontName) // { // Font font = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var rootPath = ResourcesPath.UI_FONT_SUFFIX; // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, rootPath, "/", _fontName, ".ttf"); // font = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // var assetInfo = new AssetInfo("ui/font", _fontName); // font = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo, typeof(Font)) as Font; // } // if (font == null) // { // Debug.LogErrorFormat("UILoader.LoadFont() => 加载不到资源: {0}.", _fontName); // } // return font; // } // public static void UnLoadFont(string _fontName) // { // if (!AssetSource.uiFromEditor) // { // AssetBundleUtility.Instance.UnloadAsset("ui/font", _fontName); // } // } // public static GameObject LoadTreasure(string folder, string name) // { // GameObject prefab = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // "UI/Treasure/", folder, "/", // name, // PREFAB_EXTERSION); // prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // var bundleName = StringUtility.Contact("ui/treasure/", folder).ToLower(); // var assetInfo = new AssetInfo(bundleName, name); // prefab = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as GameObject; // } // if (prefab == null) // { // Debug.LogErrorFormat("UILoader.LoadPrefab() => 加载不到资源: {0}.", name); // } // return prefab; // } // public static void UnLoadTreasure(string folder, string _assetName) // { // if (!AssetSource.uiFromEditor) // { // AssetBundleUtility.Instance.UnloadAsset(StringUtility.Contact("ui/treasure/", folder).ToLower(), _assetName); // } // } // public static GameObject LoadFaqi(string pathName, string name) // { // GameObject prefab = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // //"UI/Treasure/", folder, "/", // pathName, // name, // PREFAB_EXTERSION); // prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // var bundleName = pathName; //StringUtility.Contact("ui/treasure/", folder).ToLower(); // var assetInfo = new AssetInfo(bundleName, name); // prefab = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as GameObject; // } // if (prefab == null) // { // Debug.LogErrorFormat("UILoader.LoadFaqi() => 加载不到资源: {0}.", name); // } // return prefab; // } // public static GameObject LoadGodWeapon(string _name) // { // GameObject prefab = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // "UI/GodWeapon/", // _name, // PREFAB_EXTERSION); // prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // var bundleName = "ui/godweapon"; // var assetInfo = new AssetInfo(bundleName, _name); // prefab = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as GameObject; // } // if (prefab == null) // { // Debug.LogErrorFormat("UILoader.LoadGodWeapon() => 加载不到资源: {0}.", _name); // } // return prefab; // } // public static GameObject LoadBossShow(string _name) // { // GameObject prefab = null; // if (AssetSource.uiFromEditor) // { // #if UNITY_EDITOR // var path = StringUtility.Contact(ResourcesPath.ResourcesOutAssetPath, // "UI/BossShow/", // _name, // PREFAB_EXTERSION); // prefab = UnityEditor.AssetDatabase.LoadAssetAtPath(path); // #endif // } // else // { // var bundleName = "ui/bossshow"; // var assetInfo = new AssetInfo(bundleName, _name); // prefab = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo) as GameObject; // } // if (prefab == null) // { // Debug.LogErrorFormat("UILoader.LoadBossShow() => 加载不到资源: {0}.", _name); // } // return prefab; // } // }