private static AssetBundleInfo AddBundleToFolder(AssetBundleFolderInfo root, AssetBundleNameInfo nameData) { AssetBundleInfo currInfo = root.GetAssetBundleInfoByName(nameData.shortName); if (!System.String.IsNullOrEmpty(nameData.variant)) { if (currInfo == null) { currInfo = new BundleVariantFolderInfo(nameData.bundleName, root); root.AddChild(currInfo); } var folder = currInfo as BundleVariantFolderInfo; if (folder == null) { var message = "Bundle named " + nameData.shortName; message += " exists both as a standard bundle, and a bundle with variants. "; message += "This message is not supported for display or actual bundle building. "; message += "You must manually fix bundle naming in the inspector."; LogError(message); return(null); } currInfo = folder.GetAssetBundleInfoByName(nameData.variant); if (currInfo == null) { currInfo = new BundleVariantDataInfo(nameData.fullNativeName, folder); folder.AddChild(currInfo); } } else { if (currInfo == null) { currInfo = new BundleDataInfo(nameData.fullNativeName, root); root.AddChild(currInfo); } else { var dataInfo = currInfo as BundleDataInfo; if (dataInfo == null) { s_InErrorState = true; LogFolderAndBundleNameConflict(nameData.fullNativeName); } } } return(currInfo); }
internal override void HandleReparent(string parentName, AssetBundleFolderInfo newParent = null) { RefreshAssetList(); string newName = System.String.IsNullOrEmpty(parentName) ? "" : parentName + '/'; newName += m_Name.shortName; if (newName == m_Name.bundleName) { return; } if (newParent != null && newParent.GetAssetBundleInfoByName(newName) != null) { AssetBundleModel.LogWarning("An item named '" + newName + "' already exists at this level in hierarchy. If your desire is to merge bundles, drag one on top of the other."); return; } foreach (var asset in m_ConcreteAssets) { AssetBundleModel.MoveAssetToBundle(asset, newName, m_Name.variant); } if (newParent != null) { m_Parent.HandleChildRename(m_Name.shortName, string.Empty); m_Parent = newParent; m_Parent.AddChild(this); } m_Name.SetBundleName(newName, m_Name.variant); }