private void OnPlayerInfoSystemRecivedMsg(CSPkg msg) { if (msg.stPkgData.get_stGetAcntDetailInfoRsp().iErrCode != 0) { Singleton <CUIManager> .GetInstance().OpenMessageBox(string.Format("Error Code {0}", msg.stPkgData.get_stGetAcntDetailInfoRsp().iErrCode), false); return; } this.m_BackPlayeInfoMsg = msg; this.m_PlayerProfile.ConvertServerDetailData(msg.stPkgData.get_stGetAcntDetailInfoRsp().stAcntDetail.get_stOfSucc()); CUIFormScript cUIFormScript = Singleton <CUIManager> .GetInstance().OpenForm(CMiniPlayerInfoSystem.sPlayerInfoFormPath, false, true); if (cUIFormScript == null) { return; } if (this.m_bUp) { cUIFormScript.SetPriority(enFormPriority.Priority5); } else { cUIFormScript.RestorePriority(); } GameObject widget = cUIFormScript.GetWidget(0); RectTransform rectTransform = cUIFormScript.transform.Find("panel") as RectTransform; if (rectTransform == null) { Debug.LogError("mini player info form's panel is null"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); } CMiniPlayerInfoSystem.OpenSrc openSrc = this.m_OpenSrc; if (openSrc != CMiniPlayerInfoSystem.OpenSrc.Rank) { if (openSrc == CMiniPlayerInfoSystem.OpenSrc.Chat) { CUIFormScript form = Singleton <CUIManager> .GetInstance().GetForm(CChatController.ChatFormPath); if (form == null) { Debug.LogError("can't get chat form"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } RectTransform rectTransform2 = form.transform.Find("node/null") as RectTransform; if (rectTransform2 == null) { Debug.LogError("chat form's close btn is null"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } widget.CustomSetActive(true); Vector3[] array = new Vector3[4]; rectTransform2.GetWorldCorners(array); Vector2 vector = CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .get_instance().FormCamera, array[3]); Vector2 screenPoint = new Vector2(0f, vector.y); Vector3[] array2 = new Vector3[4]; rectTransform.GetWorldCorners(array2); float num = CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .get_instance().FormCamera, array2[3]).x - CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .get_instance().FormCamera, array2[0]).x; if (vector.x + num + 100f > (float)Screen.width) { screenPoint.x = (float)Screen.width - num - 15f; } else { screenPoint = new Vector2(vector.x + 20f, vector.y); } rectTransform.position = CUIUtility.ScreenToWorldPoint(cUIFormScript.GetCamera(), screenPoint, rectTransform.position.z); } } else { CUIFormScript form2 = Singleton <CUIManager> .GetInstance().GetForm(RankingSystem.s_rankingForm); if (form2 == null) { Debug.LogError("can't get ranking form"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } RectTransform rectTransform3 = form2.transform.Find("bg") as RectTransform; if (rectTransform3 == null) { Debug.LogError("ranking form's bg is null"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } widget.CustomSetActive(true); Vector3[] array3 = new Vector3[4]; rectTransform3.GetWorldCorners(array3); Vector2 vector2 = CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .get_instance().FormCamera, array3[2]); Vector2 screenPoint2 = new Vector2(0f, vector2.y - 100f); Vector3[] array4 = new Vector3[4]; rectTransform.GetWorldCorners(array4); float num2 = CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .get_instance().FormCamera, array4[3]).x - CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .get_instance().FormCamera, array4[0]).x; if (vector2.x + 80f + num2 > (float)Screen.width) { screenPoint2.x = (float)Screen.width - num2 - 15f; } else { screenPoint2.x = vector2.x + 80f; } rectTransform.position = CUIUtility.ScreenToWorldPoint(cUIFormScript.GetCamera(), screenPoint2, rectTransform.position.z); } Text componetInChild = Utility.GetComponetInChild <Text>(cUIFormScript.gameObject, "panel/Name/Text"); if (componetInChild != null) { componetInChild.text = this.m_PlayerProfile.Name(); } COMDT_FRIEND_INFO info = Singleton <CFriendContoller> .get_instance().model.GetInfo(CFriendModel.FriendType.GameFriend, this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); COMDT_FRIEND_INFO info2 = Singleton <CFriendContoller> .get_instance().model.GetInfo(CFriendModel.FriendType.SNS, this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); Text componetInChild2 = Utility.GetComponetInChild <Text>(cUIFormScript.gameObject, "panel/Online/Text"); if (componetInChild2 != null) { if (this.m_PlayerProfile.IsOnLine()) { COMDT_FRIEND_INFO cOMDT_FRIEND_INFO = (info != null) ? info : ((info2 != null) ? info2 : null); if (cOMDT_FRIEND_INFO != null) { COM_ACNT_GAME_STATE friendInGamingState = Singleton <CFriendContoller> .get_instance().model.GetFriendInGamingState(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); if (friendInGamingState == null) { componetInChild2.text = string.Format("<color=#00ff00>{0}</color>", Singleton <CTextManager> .get_instance().GetText("Common_Online")); } else if (friendInGamingState == 1 || friendInGamingState == 2) { componetInChild2.text = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .get_instance().GetText("Common_Gaming")); } else if (friendInGamingState == 3) { componetInChild2.text = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .get_instance().GetText("Common_Teaming")); } } else { componetInChild2.text = string.Format("<color=#00ff00>{0}</color>", Singleton <CTextManager> .get_instance().GetText("Common_Online")); } } else { Text arg_5D9_0 = componetInChild2; string text = Singleton <CTextManager> .GetInstance().GetText("Common_Offline"); componetInChild2.text = text; arg_5D9_0.text = text; } } Text componetInChild3 = Utility.GetComponetInChild <Text>(cUIFormScript.gameObject, "panel/DuanWei/Text"); if (componetInChild3 != null) { string rankName = CLadderView.GetRankName(this.m_PlayerProfile.GetRankGrade(), (uint)this.m_PlayerProfile.GetRankClass()); componetInChild3.text = ((!string.IsNullOrEmpty(rankName)) ? rankName : Singleton <CTextManager> .GetInstance().GetText("Common_NoData")); } Text componetInChild4 = Utility.GetComponetInChild <Text>(cUIFormScript.gameObject, "panel/Team/Text"); Text componetInChild5 = Utility.GetComponetInChild <Text>(cUIFormScript.gameObject, "panel/Position/Text"); if (!CGuildSystem.IsInNormalGuild(this.m_PlayerProfile.GuildState) || string.IsNullOrEmpty(this.m_PlayerProfile.GuildName)) { if (componetInChild4 != null) { componetInChild4.text = Singleton <CTextManager> .GetInstance().GetText("PlayerInfo_Guild"); } if (componetInChild5 != null) { componetInChild5.text = Singleton <CTextManager> .GetInstance().GetText("PlayerInfo_Guild"); } } else { if (componetInChild4 != null) { componetInChild4.text = this.m_PlayerProfile.GuildName; } if (componetInChild5 != null) { componetInChild5.text = CGuildHelper.GetPositionName(this.m_PlayerProfile.GuildState); } } GameObject obj = Utility.FindChild(cUIFormScript.gameObject, "panel/Btn/AddFriend"); GameObject obj2 = Utility.FindChild(cUIFormScript.gameObject, "panel/Btn/Profile"); GameObject obj3 = Utility.FindChild(cUIFormScript.gameObject, "panel/Btn/3v3"); GameObject obj4 = Utility.FindChild(cUIFormScript.gameObject, "panel/Btn/5v5"); GameObject gameObject = Utility.FindChild(cUIFormScript.gameObject, "panel/Btn/Block"); obj2.CustomSetActive(true); openSrc = this.m_OpenSrc; if (openSrc != CMiniPlayerInfoSystem.OpenSrc.Rank) { if (openSrc == CMiniPlayerInfoSystem.OpenSrc.Chat) { switch (Singleton <CChatController> .GetInstance().view.CurTab) { case EChatChannel.Lobby: case EChatChannel.GuildMatchTeam: obj3.CustomSetActive(false); obj4.CustomSetActive(false); if (info != null || info2 != null) { obj.CustomSetActive(false); } else { obj.CustomSetActive(true); } gameObject.CustomSetActive(true); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .get_instance().model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); break; case EChatChannel.Guild: if (info != null || info2 != null) { obj.CustomSetActive(false); obj3.CustomSetActive(true); obj4.CustomSetActive(true); } else { obj.CustomSetActive(true); obj3.CustomSetActive(false); obj4.CustomSetActive(false); } gameObject.CustomSetActive(true); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .get_instance().model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); break; case EChatChannel.Friend_Chat: obj.CustomSetActive(false); obj3.CustomSetActive(true); obj4.CustomSetActive(true); gameObject.CustomSetActive(true); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .get_instance().model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); break; case EChatChannel.Settle: obj.CustomSetActive(false); obj3.CustomSetActive(false); obj4.CustomSetActive(false); gameObject.CustomSetActive(true); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .get_instance().model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); break; } } } else { if (info != null || info2 != null) { obj.CustomSetActive(false); obj3.CustomSetActive(true); obj4.CustomSetActive(true); } else { obj.CustomSetActive(true); obj3.CustomSetActive(false); obj4.CustomSetActive(false); } gameObject.CustomSetActive(false); } }