public bool MapAssetPath(string assetPath, out string assetbundleName, out string assetName) { assetbundleName = null; assetName = null; ResourcesMapItem item = null; if (pathLookup.TryGetValue(assetPath, out item)) { assetbundleName = item.assetbundleName; assetName = item.assetName; return(true); } #if UNITY_EDITOR else { foreach (var VARIABLE in pathLookup.Keys) { if (VARIABLE.ToLower().Equals(assetPath.ToLower())) { item = pathLookup[VARIABLE]; assetbundleName = item.assetbundleName; assetName = item.assetName; Logger.LogError($"{assetPath} 没有找到, 是不是要找{VARIABLE}"); return(true); } } } #endif return(false); }
public void Initialize(string content) { if (string.IsNullOrEmpty(content)) { Logger.LogError("ResourceNameMap empty!!"); return; } content = content.Replace("\r\n", "\n"); string[] mapList = content.Split('\n'); foreach (string map in mapList) { if (string.IsNullOrEmpty(map)) { continue; } string[] splitArr = map.Split(new[] { PATTREN }, System.StringSplitOptions.None); if (splitArr.Length < 2) { Logger.LogError("splitArr length < 2 : " + map); continue; } ResourcesMapItem item = new ResourcesMapItem(); // 如:assetspackage/ui/prefab/assetbundleupdaterpanel_prefab.assetbundle item.assetbundleName = splitArr[0]; // 如:Assets/AssetsPackage/UI/Prefab/AssetbundleUpdaterPanel.prefab item.assetName = splitArr[1]; // 如:Assets/AssetsPackage/ string assetPath = null; string mapHead = string.Format("Assets/{0}/", AssetBundleConfig.AssetsFolderName); if (item.assetName.StartsWith(mapHead)) { // 如:UI/Prefab/AssetbundleUpdaterPanel.prefabd assetPath = GameUtility.FormatToUnityPath(item.assetName.Replace(mapHead, "")); } pathLookup.Add(assetPath, item); List <string> assetsList = null; assetsLookup.TryGetValue(item.assetbundleName, out assetsList); if (assetsList == null) { assetsList = new List <string>(); } if (!assetsList.Contains(item.assetName)) { assetsList.Add(item.assetName); } assetsLookup[item.assetbundleName] = assetsList; assetbundleLookup.Add(item.assetName, item.assetbundleName); } }
public void Initialize(string content) { if (string.IsNullOrEmpty(content)) { Logger.LogError("ResourceNameMap empty!!"); return; } content = content.Replace("\r\n", "\n"); string[] mapList = content.Split('\n'); foreach (string map in mapList) { if (string.IsNullOrEmpty(map)) { continue; } string[] splitArr = map.Split(new[] { PATTREN }, System.StringSplitOptions.None); if (splitArr.Length < 2) { Logger.LogError("splitArr length < 2 : " + map); continue; } ResourcesMapItem item = new ResourcesMapItem(); // 如:ui/prefab/assetbundleupdaterpanel_prefab.assetbundle item.assetbundleName = splitArr[0]; // 如:UI/Prefab/AssetbundleUpdaterPanel.prefab item.assetName = splitArr[1]; var assetPath = item.assetName; if (!pathLookup.ContainsKey(assetPath)) { pathLookup.Add(assetPath, item); } List <string> assetsList = null; assetsLookup.TryGetValue(item.assetbundleName, out assetsList); if (assetsList == null) { assetsList = new List <string>(); } if (!assetsList.Contains(item.assetName)) { assetsList.Add(item.assetName); } assetsLookup[item.assetbundleName] = assetsList; if (!assetbundleLookup.ContainsKey(item.assetName)) { assetbundleLookup.Add(item.assetName, item.assetbundleName); } } }
public bool MapAssetPath(string assetPath, out string assetbundleName, out string assetName) { assetbundleName = null; assetName = null; ResourcesMapItem item = null; if (pathLookup.TryGetValue(assetPath, out item)) { assetbundleName = item.assetbundleName; assetName = item.assetName; return(true); } return(false); }