private bool GetOtherPlayerState(COM_INVITE_RELATION_TYPE type, ulong uid, uint dwLogicWorldID, out string stateStr, out string headURL) { headURL = string.Empty; if (type == COM_INVITE_RELATION_TYPE.COM_INVITE_RELATION_FRIEND) { CFriendModel.FriendInGame friendInGaming = Singleton <CFriendContoller> .instance.model.GetFriendInGaming(uid, dwLogicWorldID); COMDT_FRIEND_INFO gameOrSnsFriend = Singleton <CFriendContoller> .instance.model.GetGameOrSnsFriend(uid, dwLogicWorldID); if (gameOrSnsFriend == null) { stateStr = Singleton <CMailSys> .instance.offlineStr; return(false); } headURL = Utility.UTF8Convert(gameOrSnsFriend.szHeadUrl); if (gameOrSnsFriend.bIsOnline != 1) { stateStr = Singleton <CMailSys> .instance.offlineStr; return(false); } stateStr = Singleton <CMailSys> .instance.onlineStr; if (friendInGaming == null) { return(gameOrSnsFriend.bIsOnline == 1); } if (friendInGaming.State == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_SINGLEGAME || friendInGaming.State == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_MULTIGAME) { if (friendInGaming.startTime > 0u) { stateStr = Singleton <CMailSys> .instance.gamingStr; } else { stateStr = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Gaming_NoTime")); } } else if (friendInGaming.State == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_TEAM) { stateStr = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Teaming")); } return(gameOrSnsFriend.bIsOnline == 1); } else if (type == COM_INVITE_RELATION_TYPE.COM_INVITE_RELATION_GUILDMEMBER) { GuildMemInfo guildMemberInfoByUid = CGuildHelper.GetGuildMemberInfoByUid(uid); if (guildMemberInfoByUid == null) { stateStr = Singleton <CMailSys> .instance.offlineStr; return(false); } headURL = guildMemberInfoByUid.stBriefInfo.szHeadUrl; if (!CGuildHelper.IsMemberOnline(guildMemberInfoByUid)) { stateStr = Singleton <CMailSys> .instance.offlineStr; return(false); } stateStr = Singleton <CMailSys> .instance.onlineStr; if (guildMemberInfoByUid.GameState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_SINGLEGAME || guildMemberInfoByUid.GameState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_MULTIGAME) { if (guildMemberInfoByUid.dwGameStartTime > 0u) { stateStr = Singleton <CMailSys> .instance.gamingStr; } else { stateStr = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Gaming_NoTime")); } } return(true); } else { if (type != COM_INVITE_RELATION_TYPE.COM_INVITE_RELATION_LBS) { stateStr = Singleton <CMailSys> .instance.offlineStr; return(false); } CSDT_LBS_USER_INFO lBSUserInfo = Singleton <CFriendContoller> .instance.model.GetLBSUserInfo(uid, dwLogicWorldID, CFriendModel.LBSGenderType.Both); if (lBSUserInfo == null) { stateStr = Singleton <CMailSys> .instance.offlineStr; return(false); } headURL = Utility.UTF8Convert(lBSUserInfo.stLbsUserInfo.szHeadUrl); if (lBSUserInfo.stLbsUserInfo.bIsOnline == 1) { stateStr = Singleton <CMailSys> .instance.onlineStr; } else { stateStr = Singleton <CMailSys> .instance.offlineStr; } return(lBSUserInfo.stLbsUserInfo.bIsOnline == 1); } }
public void UpdateListElenment(GameObject element, CMail mail) { int currentUTCTime = CRoleInfo.GetCurrentUTCTime(); Text componetInChild = Utility.GetComponetInChild <Text>(element, "Title"); Text componetInChild2 = Utility.GetComponetInChild <Text>(element, "MailTime"); GameObject obj = Utility.FindChild(element, "New"); GameObject obj2 = Utility.FindChild(element, "ReadMailIcon"); GameObject obj3 = Utility.FindChild(element, "UnReadMailIcon"); GameObject obj4 = Utility.FindChild(element, "CoinImg"); Text componetInChild3 = Utility.GetComponetInChild <Text>(element, "From"); CUIHttpImageScript componetInChild4 = Utility.GetComponetInChild <CUIHttpImageScript>(element, "HeadBg/imgHead"); GameObject obj5 = null; Text text = null; GameObject gameObject = Utility.FindChild(element, "OnlineBg"); if (gameObject != null) { obj5 = gameObject.gameObject; } GameObject gameObject2 = Utility.FindChild(element, "Online"); if (gameObject2 != null) { text = gameObject2.GetComponent <Text>(); } componetInChild.set_text(mail.subject); componetInChild2.set_text(Utility.GetTimeBeforString((long)((ulong)mail.sendTime), (long)currentUTCTime)); bool flag = mail.mailState == COM_MAIL_STATE.COM_MAIL_UNREAD; obj.CustomSetActive(flag); if (mail.mailType == CustomMailType.SYSTEM) { obj2.CustomSetActive(!flag); obj3.CustomSetActive(flag); componetInChild3.set_text(string.Empty); componetInChild4.gameObject.CustomSetActive(false); obj4.CustomSetActive(false); obj5.CustomSetActive(false); if (text != null) { text.gameObject.CustomSetActive(false); } } else if (mail.mailType == CustomMailType.FRIEND) { obj5.CustomSetActive(false); if (text != null) { text.gameObject.CustomSetActive(false); } obj2.CustomSetActive(false); obj3.CustomSetActive(false); componetInChild3.set_text(mail.from); componetInChild4.gameObject.CustomSetActive(true); if (mail.subType == 3) { obj4.CustomSetActive(false); componetInChild4.SetImageSprite(CGuildHelper.GetGuildHeadPath(), this.m_CUIForm); } else { obj4.CustomSetActive(true); if (!CSysDynamicBlock.bFriendBlocked) { COMDT_FRIEND_INFO friendByName = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.GameFriend); if (friendByName == null) { friendByName = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.SNS); } if (friendByName != null) { string url = Utility.UTF8Convert(friendByName.szHeadUrl); componetInChild4.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(url)); } } } } else if (mail.mailType == CustomMailType.FRIEND_INVITE) { obj5.CustomSetActive(true); if (text != null) { text.gameObject.CustomSetActive(true); } obj2.CustomSetActive(false); obj3.CustomSetActive(false); componetInChild3.set_text(string.Empty); componetInChild4.gameObject.CustomSetActive(true); obj4.CustomSetActive(false); Transform transform = element.transform.FindChild("invite_btn"); GameObject obj6 = null; if (transform != null) { obj6 = transform.gameObject; } if (mail.relationType == 1) { GuildMemInfo guildMemberInfoByUid = CGuildHelper.GetGuildMemberInfoByUid(mail.uid); Singleton <CMailSys> .instance.AddGuildMemInfo(guildMemberInfoByUid); } this.SetEventParams(element, mail); string text2; string url2; bool flag2 = !this.GetOtherPlayerState((COM_INVITE_RELATION_TYPE)mail.relationType, mail.uid, mail.dwLogicWorldID, out text2, out url2); string processTypeString = this.GetProcessTypeString((CMailSys.enProcessInviteType)mail.processType); componetInChild.set_text(string.Format("{0} {1}", mail.subject, processTypeString)); if (text != null) { text.set_text(text2); } componetInChild4.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(url2)); if (flag2) { CUIUtility.GetComponentInChildren <Image>(componetInChild4.gameObject).set_color(CUIUtility.s_Color_GrayShader); } else { CUIUtility.GetComponentInChildren <Image>(componetInChild4.gameObject).set_color(CUIUtility.s_Color_Full); } obj6.CustomSetActive(!flag2); } else if (mail.mailType == CustomMailType.ASK_FOR) { obj2.CustomSetActive(false); obj3.CustomSetActive(false); componetInChild3.set_text(mail.from); componetInChild4.gameObject.CustomSetActive(true); obj4.CustomSetActive(false); obj5.CustomSetActive(false); if (text != null) { text.gameObject.CustomSetActive(false); } if (!CSysDynamicBlock.bFriendBlocked) { CFriendModel.FriendType friendType = CFriendModel.FriendType.GameFriend; COMDT_FRIEND_INFO friendByName2 = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.GameFriend); if (friendByName2 == null) { friendType = CFriendModel.FriendType.SNS; friendByName2 = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.SNS); } if (friendByName2 != null) { string url3 = Utility.UTF8Convert(friendByName2.szHeadUrl); componetInChild4.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(url3)); UT.ShowFriendData(friendByName2, element.GetComponent <FriendShower>(), FriendShower.ItemType.Normal, false, friendType, Singleton <CUIManager> .GetInstance().GetForm(CMailSys.MAIL_FORM_PATH), true); } } } }
private void OnPlayerInfoSystemRecivedMsg(CSPkg msg) { if (msg.stPkgData.stGetAcntDetailInfoRsp.iErrCode != 0) { Singleton <CUIManager> .GetInstance().OpenMessageBox(string.Format("Error Code {0}", msg.stPkgData.stGetAcntDetailInfoRsp.iErrCode), false); return; } this.m_BackPlayeInfoMsg = msg; this.m_PlayerProfile.ConvertServerDetailData(msg.stPkgData.stGetAcntDetailInfoRsp.stAcntDetail.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> .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> .instance.FormCamera, array2[3]).x - CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .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> .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> .instance.FormCamera, array4[3]).x - CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .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.set_text(this.m_PlayerProfile.Name()); } COMDT_FRIEND_INFO info = Singleton <CFriendContoller> .instance.model.GetInfo(CFriendModel.FriendType.GameFriend, this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); COMDT_FRIEND_INFO info2 = Singleton <CFriendContoller> .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) ? ((info2 == null) ? null : info2) : info; if (cOMDT_FRIEND_INFO != null) { COM_ACNT_GAME_STATE friendInGamingState = Singleton <CFriendContoller> .instance.model.GetFriendInGamingState(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); if (friendInGamingState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_IDLE) { componetInChild2.set_text(string.Format("<color=#00ff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Online"))); } else if (friendInGamingState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_SINGLEGAME || friendInGamingState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_MULTIGAME) { componetInChild2.set_text(string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Gaming"))); } else if (friendInGamingState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_TEAM) { componetInChild2.set_text(string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Teaming"))); } } else { componetInChild2.set_text(string.Format("<color=#00ff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Online"))); } } else { Text text = componetInChild2; string text2 = Singleton <CTextManager> .GetInstance().GetText("Common_Offline"); componetInChild2.set_text(text2); text.set_text(text2); } } 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.set_text(string.IsNullOrEmpty(rankName) ? Singleton <CTextManager> .GetInstance().GetText("Common_NoData") : rankName); } 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.set_text(Singleton <CTextManager> .GetInstance().GetText("PlayerInfo_Guild")); } if (componetInChild5 != null) { componetInChild5.set_text(Singleton <CTextManager> .GetInstance().GetText("PlayerInfo_Guild")); } } else { if (componetInChild4 != null) { componetInChild4.set_text(this.m_PlayerProfile.GuildName); } if (componetInChild5 != null) { componetInChild5.set_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"); GameObject obj5 = Utility.FindChild(cUIFormScript.gameObject, "panel/Btn/Complaints"); obj5.CustomSetActive(false); 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); obj5.CustomSetActive(false); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .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); obj5.CustomSetActive(false); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .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); obj5.CustomSetActive(false); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .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); obj5.CustomSetActive(false); this.SetBlockButtonBlocked(gameObject, Singleton <CFriendContoller> .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); obj5.CustomSetActive(false); } }
private void OnPlayerInfoSystemRecivedMsg(CSPkg msg) { Text text3; if (msg.stPkgData.stGetAcntDetailInfoRsp.iErrCode != 0) { Singleton <CUIManager> .GetInstance().OpenMessageBox(string.Format("Error Code {0}", msg.stPkgData.stGetAcntDetailInfoRsp.iErrCode), false); return; } this.m_BackPlayeInfoMsg = msg; this.m_PlayerProfile.ConvertServerDetailData(msg.stPkgData.stGetAcntDetailInfoRsp.stAcntDetail.stOfSucc); CUIFormScript script = Singleton <CUIManager> .GetInstance().OpenForm(sPlayerInfoFormPath, false, true); if (script == null) { return; } if (this.m_bUp) { script.SetPriority(enFormPriority.Priority5); } else { script.RestorePriority(); } GameObject widget = script.GetWidget(0); RectTransform transform = script.transform.Find("panel") as RectTransform; if (transform == null) { Debug.LogError("mini player info form's panel is null"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); } OpenSrc openSrc = this.m_OpenSrc; if (openSrc == OpenSrc.Rank) { CUIFormScript form = Singleton <CUIManager> .GetInstance().GetForm(RankingSystem.s_rankingForm); if (form == null) { Debug.LogError("can't get ranking form"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } RectTransform transform3 = form.transform.Find("bg") as RectTransform; if (transform3 == null) { Debug.LogError("ranking form's bg is null"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } widget.CustomSetActive(true); Vector3[] fourCornersArray = new Vector3[4]; transform3.GetWorldCorners(fourCornersArray); Vector2 vector3 = CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .instance.FormCamera, fourCornersArray[2]); Vector2 screenPoint = new Vector2(0f, vector3.y - 100f); if (((vector3.x + 80f) + transform.rect.width) > Screen.width) { screenPoint.x = (Screen.width - transform.rect.width) - 15f; } else { screenPoint.x = vector3.x + 80f; } transform.position = CUIUtility.ScreenToWorldPoint(script.GetCamera(), screenPoint, transform.position.z); } else if (openSrc == OpenSrc.Chat) { CUIFormScript script2 = Singleton <CUIManager> .GetInstance().GetForm(CChatController.ChatFormPath); if (script2 == null) { Debug.LogError("can't get chat form"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } RectTransform transform2 = script2.transform.Find("node/null") as RectTransform; if (transform2 == null) { Debug.LogError("chat form's close btn is null"); Singleton <CUIEventManager> .GetInstance().DispatchUIEvent(enUIEventID.Mini_Player_Info_CloseForm); return; } widget.CustomSetActive(true); Vector3[] vectorArray = new Vector3[4]; transform2.GetWorldCorners(vectorArray); Vector2 vector = CUIUtility.WorldToScreenPoint(Singleton <CUIManager> .instance.FormCamera, vectorArray[3]); Vector2 vector2 = new Vector2(0f, vector.y); if (((vector.x + transform.rect.width) + 100f) > Screen.width) { vector2.x = (Screen.width - transform.rect.width) - 15f; } else { vector2 = new Vector2(vector.x + 20f, vector.y); } transform.position = CUIUtility.ScreenToWorldPoint(script.GetCamera(), vector2, transform.position.z); } Text componetInChild = Utility.GetComponetInChild <Text>(script.gameObject, "panel/Name/Text"); if (componetInChild != null) { componetInChild.text = this.m_PlayerProfile.Name(); } COMDT_FRIEND_INFO comdt_friend_info = Singleton <CFriendContoller> .instance.model.GetInfo(CFriendModel.FriendType.GameFriend, this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); COMDT_FRIEND_INFO comdt_friend_info2 = Singleton <CFriendContoller> .instance.model.GetInfo(CFriendModel.FriendType.SNS, this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); Text text2 = Utility.GetComponetInChild <Text>(script.gameObject, "panel/Online/Text"); if (text2 != null) { if (this.m_PlayerProfile.IsOnLine()) { if (((comdt_friend_info != null) ? comdt_friend_info : ((comdt_friend_info2 != null) ? comdt_friend_info2 : null)) != null) { COM_ACNT_GAME_STATE friendInGamingState = Singleton <CFriendContoller> .instance.model.GetFriendInGamingState(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld); switch (friendInGamingState) { case COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_IDLE: text2.text = string.Format("<color=#00ff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Online")); goto Label_0558; case COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_SINGLEGAME: case COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_MULTIGAME: text2.text = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Gaming")); goto Label_0558; } if (friendInGamingState == COM_ACNT_GAME_STATE.COM_ACNT_GAME_STATE_TEAM) { text2.text = string.Format("<color=#ffff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Teaming")); } } else { text2.text = string.Format("<color=#00ff00>{0}</color>", Singleton <CTextManager> .instance.GetText("Common_Online")); } } else { string text = Singleton <CTextManager> .GetInstance().GetText("Common_Offline"); text2.text = text; text2.text = text; } } Label_0558: text3 = Utility.GetComponetInChild <Text>(script.gameObject, "panel/DuanWei/Text"); if (text3 != null) { string rankTitle = CLadderView.GetRankTitle(this.m_PlayerProfile.GetRankGrade(), this.m_PlayerProfile.GetRankClass()); text3.text = !string.IsNullOrEmpty(rankTitle) ? rankTitle : Singleton <CTextManager> .GetInstance().GetText("Common_NoData"); } Text text4 = Utility.GetComponetInChild <Text>(script.gameObject, "panel/Team/Text"); Text text5 = Utility.GetComponetInChild <Text>(script.gameObject, "panel/Position/Text"); if (!CGuildSystem.IsInNormalGuild(this.m_PlayerProfile.GuildState) || string.IsNullOrEmpty(this.m_PlayerProfile.GuildName)) { if (text4 != null) { text4.text = Singleton <CTextManager> .GetInstance().GetText("PlayerInfo_Guild"); } if (text5 != null) { text5.text = Singleton <CTextManager> .GetInstance().GetText("PlayerInfo_Guild"); } } else { if (text4 != null) { text4.text = this.m_PlayerProfile.GuildName; } if (text5 != null) { text5.text = CGuildHelper.GetPositionName(this.m_PlayerProfile.GuildState); } } GameObject obj3 = Utility.FindChild(script.gameObject, "panel/Btn/AddFriend"); GameObject obj4 = Utility.FindChild(script.gameObject, "panel/Btn/Profile"); GameObject obj5 = Utility.FindChild(script.gameObject, "panel/Btn/3v3"); GameObject obj6 = Utility.FindChild(script.gameObject, "panel/Btn/5v5"); GameObject obj7 = Utility.FindChild(script.gameObject, "panel/Btn/Block"); obj4.CustomSetActive(true); switch (this.m_OpenSrc) { case OpenSrc.Rank: if ((comdt_friend_info != null) || (comdt_friend_info2 != null)) { obj3.CustomSetActive(false); obj5.CustomSetActive(true); obj6.CustomSetActive(true); } else { obj3.CustomSetActive(true); obj5.CustomSetActive(false); obj6.CustomSetActive(false); } obj7.CustomSetActive(false); break; case OpenSrc.Chat: switch (Singleton <CChatController> .GetInstance().view.CurTab) { case EChatChannel.Lobby: obj5.CustomSetActive(false); obj6.CustomSetActive(false); if ((comdt_friend_info == null) && (comdt_friend_info2 == null)) { obj3.CustomSetActive(true); } else { obj3.CustomSetActive(false); } obj7.CustomSetActive(true); this.SetBlockButtonBlocked(obj7, Singleton <CFriendContoller> .instance.model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); return; case EChatChannel.Friend: case EChatChannel.Select_Hero: case EChatChannel.Speaker: return; case EChatChannel.Guild: if ((comdt_friend_info == null) && (comdt_friend_info2 == null)) { obj3.CustomSetActive(true); obj5.CustomSetActive(false); obj6.CustomSetActive(false); } else { obj3.CustomSetActive(false); obj5.CustomSetActive(true); obj6.CustomSetActive(true); } obj7.CustomSetActive(true); this.SetBlockButtonBlocked(obj7, Singleton <CFriendContoller> .instance.model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); return; case EChatChannel.Friend_Chat: obj3.CustomSetActive(false); obj5.CustomSetActive(true); obj6.CustomSetActive(true); obj7.CustomSetActive(true); this.SetBlockButtonBlocked(obj7, Singleton <CFriendContoller> .instance.model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); return; case EChatChannel.Settle: obj3.CustomSetActive(false); obj5.CustomSetActive(false); obj6.CustomSetActive(false); obj7.CustomSetActive(true); this.SetBlockButtonBlocked(obj7, Singleton <CFriendContoller> .instance.model.IsBlack(this.m_CurSelectedUuid, (uint)this.m_CurSelectedLogicWorld)); return; } break; } }
public void UpdateListElenment(GameObject element, CMail mail) { int currentUTCTime = CRoleInfo.GetCurrentUTCTime(); Text component = element.transform.FindChild("Title").GetComponent <Text>(); Text text2 = element.transform.FindChild("MailTime").GetComponent <Text>(); GameObject gameObject = element.transform.FindChild("New").gameObject; GameObject obj3 = element.transform.FindChild("ReadMailIcon").gameObject; GameObject obj4 = element.transform.FindChild("UnReadMailIcon").gameObject; GameObject obj5 = element.transform.FindChild("CoinImg").gameObject; Text text3 = element.transform.FindChild("From").GetComponent <Text>(); CUIHttpImageScript script = element.transform.FindChild("HeadBg/imgHead").GetComponent <CUIHttpImageScript>(); component.text = mail.subject; text2.text = Utility.GetTimeBeforString((long)mail.sendTime, (long)currentUTCTime); bool bActive = mail.mailState == COM_MAIL_STATE.COM_MAIL_UNREAD; gameObject.CustomSetActive(bActive); if (mail.mailType == COM_MAIL_TYPE.COM_MAIL_SYSTEM) { obj3.CustomSetActive(!bActive); obj4.CustomSetActive(bActive); text3.text = string.Empty; script.gameObject.CustomSetActive(false); obj5.SetActive(false); } else if (mail.mailType == COM_MAIL_TYPE.COM_MAIL_FRIEND) { obj3.CustomSetActive(false); obj4.CustomSetActive(false); text3.text = mail.from; script.gameObject.CustomSetActive(true); if (mail.subType == 3) { obj5.CustomSetActive(false); script.SetImageSprite(CGuildHelper.GetGuildHeadPath(), this.m_CUIForm); } else { obj5.CustomSetActive(true); if (!CSysDynamicBlock.bFriendBlocked) { COMDT_FRIEND_INFO comdt_friend_info = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.GameFriend); if (comdt_friend_info == null) { comdt_friend_info = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.SNS); } if (comdt_friend_info != null) { string url = Utility.UTF8Convert(comdt_friend_info.szHeadUrl); script.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(url)); } } } } else if (mail.mailType == COM_MAIL_TYPE.COM_MAIL_FRIEND_INVITE) { obj3.CustomSetActive(false); obj4.CustomSetActive(false); text3.text = string.Empty; script.gameObject.CustomSetActive(true); obj5.SetActive(false); if (!CSysDynamicBlock.bFriendBlocked) { COMDT_FRIEND_INFO comdt_friend_info2 = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.GameFriend); if (comdt_friend_info2 == null) { comdt_friend_info2 = Singleton <CFriendContoller> .instance.model.getFriendByName(mail.from, CFriendModel.FriendType.SNS); } if (comdt_friend_info2 != null) { string str2 = Utility.UTF8Convert(comdt_friend_info2.szHeadUrl); script.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(str2)); } } } }
public void UpdateListElenment(GameObject element, CMail mail) { int currentUTCTime = CRoleInfo.GetCurrentUTCTime(); Text component = element.transform.FindChild("Title").GetComponent <Text>(); Text component2 = element.transform.FindChild("MailTime").GetComponent <Text>(); GameObject gameObject = element.transform.FindChild("New").gameObject; GameObject gameObject2 = element.transform.FindChild("ReadMailIcon").gameObject; GameObject gameObject3 = element.transform.FindChild("UnReadMailIcon").gameObject; GameObject gameObject4 = element.transform.FindChild("CoinImg").gameObject; Text component3 = element.transform.FindChild("From").GetComponent <Text>(); CUIHttpImageScript component4 = element.transform.FindChild("HeadBg/imgHead").GetComponent <CUIHttpImageScript>(); GameObject obj = null; Text text = null; Transform transform = element.transform.FindChild("OnlineBg"); if (transform != null) { obj = transform.gameObject; } Transform transform2 = element.transform.FindChild("Online"); if (transform2 != null) { text = transform2.GetComponent <Text>(); } component.text = mail.subject; component2.text = Utility.GetTimeBeforString((long)((ulong)mail.sendTime), (long)currentUTCTime); bool flag = mail.mailState == 1; gameObject.CustomSetActive(flag); if (mail.mailType == 1) { gameObject2.CustomSetActive(!flag); gameObject3.CustomSetActive(flag); component3.text = string.Empty; component4.gameObject.CustomSetActive(false); gameObject4.SetActive(false); obj.CustomSetActive(false); if (text != null) { text.gameObject.CustomSetActive(false); } } else if (mail.mailType == 2) { obj.CustomSetActive(false); if (text != null) { text.gameObject.CustomSetActive(false); } gameObject2.CustomSetActive(false); gameObject3.CustomSetActive(false); component3.text = mail.from; component4.gameObject.CustomSetActive(true); if (mail.subType == 3) { gameObject4.CustomSetActive(false); component4.SetImageSprite(CGuildHelper.GetGuildHeadPath(), this.m_CUIForm); } else { gameObject4.CustomSetActive(true); if (!CSysDynamicBlock.bFriendBlocked) { COMDT_FRIEND_INFO friendByName = Singleton <CFriendContoller> .get_instance().model.getFriendByName(mail.from, CFriendModel.FriendType.GameFriend); if (friendByName == null) { friendByName = Singleton <CFriendContoller> .get_instance().model.getFriendByName(mail.from, CFriendModel.FriendType.SNS); } if (friendByName != null) { string url = Utility.UTF8Convert(friendByName.szHeadUrl); component4.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(url)); } } } } else if (mail.mailType == 3) { obj.CustomSetActive(true); if (text != null) { text.gameObject.CustomSetActive(true); } gameObject2.CustomSetActive(false); gameObject3.CustomSetActive(false); component3.text = string.Empty; component4.gameObject.CustomSetActive(true); gameObject4.SetActive(false); Transform transform3 = element.transform.FindChild("invite_btn"); GameObject obj2 = null; if (transform3 != null) { obj2 = transform3.gameObject; } if (mail.relationType == 1) { GuildMemInfo guildMemberInfoByUid = CGuildHelper.GetGuildMemberInfoByUid(mail.uid); Singleton <CMailSys> .get_instance().AddGuildMemInfo(guildMemberInfoByUid); } this.SetEventParams(element, mail); string text2; string url2; bool flag2 = !this.GetOtherPlayerState(mail.relationType, mail.uid, mail.dwLogicWorldID, out text2, out url2); string processTypeString = this.GetProcessTypeString((CMailSys.enProcessInviteType)mail.processType); component.text = string.Format("{0} {1}", mail.subject, processTypeString); if (text != null) { text.text = text2; } component4.SetImageUrl(Singleton <ApolloHelper> .GetInstance().ToSnsHeadUrl(url2)); if (flag2) { CUIUtility.GetComponentInChildren <Image>(component4.gameObject).color = CUIUtility.s_Color_GrayShader; } else { CUIUtility.GetComponentInChildren <Image>(component4.gameObject).color = CUIUtility.s_Color_Full; } obj2.CustomSetActive(!flag2); } }