public void SetCharFace(Transform CharFace, int CHARKIND) { NrCharKindInfo charKindInfo = NrTSingleton <NrCharKindInfoManager> .Instance.GetCharKindInfo(CHARKIND); if (charKindInfo == null) { return; } CharChangeMainDlg.m_strBuilder.Remove(0, CharChangeMainDlg.m_strBuilder.Length); if (CHARKIND % 2 == 1) { CharChangeMainDlg.m_strBuilder.Append(string.Format("UI/CharSelect/{0}male{1}", charKindInfo.GetCHARKIND_INFO().CharTribe, NrTSingleton <UIDataManager> .Instance.AddFilePath)); } else { CharChangeMainDlg.m_strBuilder.Append(string.Format("UI/CharSelect/{0}female{1}", charKindInfo.GetCHARKIND_INFO().CharTribe, NrTSingleton <UIDataManager> .Instance.AddFilePath)); } Texture2D texture2D = ResourceCache.GetResource(CharChangeMainDlg.m_strBuilder.ToString()) as Texture2D; if (null == texture2D) { CharChangeMainDlg.RequestDownload(CharChangeMainDlg.m_strBuilder.ToString(), new PostProcPerItem(CharChangeMainDlg._OnImageProcessFace), CharFace.gameObject); } else { CharChangeMainDlg.SetCharFaceTexture(CharFace.gameObject, texture2D); } }
public static Texture2D RequestDownload(string strAssetPath, PostProcPerItem callbackDelegate, object obj) { Texture2D texture2D = null; WWWItem wWWItem = Holder.TryGetOrCreateBundle(strAssetPath + Option.extAsset, null); if (wWWItem != null && (wWWItem.isCanceled || !wWWItem.canAccessAssetBundle)) { wWWItem.SetItemType(ItemType.TEXTURE2D); wWWItem.SetCallback(callbackDelegate, obj); TsImmortal.bundleService.RequestDownloadCoroutine(wWWItem, DownGroup.RUNTIME, true); } if (!(wWWItem.mainAsset == null)) { texture2D = (wWWItem.mainAsset as Texture2D); DrawTexture drawTexture = obj as DrawTexture; if (drawTexture != null) { CharChangeMainDlg.SetTexture(drawTexture, texture2D); } else { GameObject gameObject = obj as GameObject; if (gameObject != null) { CharChangeMainDlg.SetCharFaceTexture(gameObject, texture2D); } } } return(texture2D); }
public static void _OnImageProcessFace(IDownloadedItem wItem, object obj) { if (wItem != null && wItem.canAccessAssetBundle) { Texture2D texture2D = wItem.mainAsset as Texture2D; GameObject gameObject = obj as GameObject; if (gameObject != null) { CharChangeMainDlg.SetCharFaceTexture(gameObject, texture2D); } } if (wItem.mainAsset == null) { TsLog.LogWarning("wItem.mainAsset is null -> Path = {0}", new object[] { wItem.assetPath }); } }