/// <summary> /// 길드 추방 패킷 받음(길드장 전용). /// </summary> public void GuildOrderLeave(_stGuildOrderLeaveAck stAck) { int iCount = m_GuildDetailInfo.vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember member = m_GuildDetailInfo.vMembers[i]; if (member == null) { continue; } if (member.kCharNo == stAck.kDestCharNo) { // {플레이어 이름}\n님을 길드에서 추방하였습니다.(스트링 ID : 6287) string str = string.Format(StringTableManager.GetData(6287), member.kCharName); SystemPopupWindow.Instance.SetSystemPopup(enSystemPopupType.Ok, StringTableManager.GetData(4300), str); m_GuildDetailInfo.vMembers.Remove(member); break; } } string szLabeltext = string.Format(StringTableManager.GetData(6254), m_GuildDetailInfo.vMembers.Count, m_GuildDetailInfo.kMaxMemberCount); m_GuildMemberButton.SetLabel(szLabeltext); _MyGuild.GuildOrderLeave(stAck); _guildModifyWindow.GuildOrderLeave(stAck); }
private void SetMyGuildInfo(CGuildDetail guildDetail) { m_GuildDeleteButton.SetActive(false); m_GuildOrderCaptainButton.SetActive(false); // 길드장 위임버튼. m_GuildOrderSubCaptainButton.SetActive(false); // 부길드장 임명버튼. m_GuildEmblemSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_ICON_GUILDEMBLEM, string.Format("GuildEmblem{0}", guildDetail.kGuildMark.ToString("D2"))); m_GuildNameLabel.text = guildDetail.kGuildName; DATA_GUILD_MAIN GuildMainData = CDATA_GUILD_MAIN.Get(guildDetail.kGuildLevel); if (GuildMainData != null) { // string num : 12 -> LV m_GuildLevelLabel.text = string.Format("{0} {1}", StringTableManager.GetData(12), GuildMainData.iGuildLv); } CGuildMember captainInfo = null; int iCount = guildDetail.vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember memberInfo = guildDetail.vMembers[i]; if (memberInfo == null) { continue; } if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Captain) { captainInfo = memberInfo; } if (memberInfo.kCharNo == UserInfo.Instance.CharNo) { m_MyMemberInfo = memberInfo; UserInfo.Instance.GuildKey = guildDetail.kGuildKey; UserInfo.Instance.GuildName = guildDetail.kGuildName; UserInfo.Instance.CharGuildState = m_MyMemberInfo.kMemberState; } } if (captainInfo != null) { m_GuildCaptainLabel.text = captainInfo.kCharName; } SetJoinMethodButton(guildDetail.kJoinMethod); SetNoticeOrDescButton(enNoticeAndDesc.Notice); // 공지사항이 디폴트. if (m_MyMemberInfo != null) { if (m_MyMemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Captain) { m_GuildDeleteButton.SetActive(true); m_GuildOrderCaptainButton.SetActive(true); m_GuildOrderSubCaptainButton.SetActive(true); } } }
public void SetMyGuildMember(ulong kGuildKey, _vGuildMembers vMembers) { Clear(); int iCount = vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember memberInfo = vMembers[i]; if (memberInfo == null) { continue; } if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_None || memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Request) { continue; } GuildInformationItem memberItem = UIResourceMgr.CreatePrefab <GuildInformationItem>(BUNDLELIST.PREFABS_UI_GUILD, m_GuildMemberGrid.transform, "GuildInformationItem"); memberItem.Init(enGuildInfo_WindowType.MyGuild, kGuildKey, memberInfo); m_MemberList.Add(memberItem); } SortMemberList(); }
/// <summary> /// 길드장 위임 패킷 받음. /// </summary> /// <param name="stAck"></param> public void GuildOrderCaptain(_stGuildOrderCaptainAck stAck) { // 길드관리 창이 꺼지면 관리창에서 바뀐 정보를 다시 받는다. //_guildModifyWindow.CloseUI(); UIControlManager.instance.RemoveWindow(enUIType.GUILDMODIFY); m_GuildDelegationPopupWindow.CloseUI(); _vGuildMembers vGuildMembers = m_GuildDetailInfo.vMembers; for (int i = 0; i < vGuildMembers.Count; ++i) { CGuildMember member = vGuildMembers[i]; if (member == null) { continue; } // 길드원 정보에서 내 정보 변경. if (member.kCharNo == UserInfo.Instance.CharNo) { member.kMemberState = stAck.kUserMemberState; } // 위임한 길드원. if (member.kCharNo == stAck.kDestCharNo) { member.kMemberState = _enGuildMemberState.eGuildMemberState_Captain; } } _MyGuild.GuildDetailInfoAck(m_GuildDetailInfo); }
//=================================================================================== // // Method // //=================================================================================== public void SetDelegationMember(enGuildInfo_WindowType type, CGuildDetail kGuildDetailInfo) { Clear(); m_GuildDetailInfo = kGuildDetailInfo; _vGuildMembers vGuildMembers = m_GuildDetailInfo.vMembers; if (type == enGuildInfo_WindowType.GuildCaptain_Delegation) // 길드장 위임이면. { m_TitleLabel.text = StringTableManager.GetData(6294); for (int i = 0; i < vGuildMembers.Count; ++i) { CGuildMember member = vGuildMembers[i]; if (member == null) { continue; } if (member.kMemberState == _enGuildMemberState.eGuildMemberState_AbleSubCaptain || member.kMemberState == _enGuildMemberState.eGuildMemberState_AbleMember) { GuildInformationItem memberItem = UIResourceMgr.CreatePrefab <GuildInformationItem>(BUNDLELIST.PREFABS_UI_GUILD, m_GuildMemberGrid.transform, "GuildInformationItem"); memberItem.Init(type, m_GuildDetailInfo.kGuildKey, member); m_DelegationMemberList.Add(memberItem); } } } else if (type == enGuildInfo_WindowType.GuildSubCaptain_Appointment) // 부길드장 임명이면. { m_TitleLabel.text = StringTableManager.GetData(6298); for (int i = 0; i < vGuildMembers.Count; ++i) { CGuildMember member = vGuildMembers[i]; if (member == null) { continue; } if (member.kMemberState == _enGuildMemberState.eGuildMemberState_AbleMember) { GuildInformationItem memberItem = UIResourceMgr.CreatePrefab <GuildInformationItem>(BUNDLELIST.PREFABS_UI_GUILD, m_GuildMemberGrid.transform, "GuildInformationItem"); memberItem.Init(type, m_GuildDetailInfo.kGuildKey, member); m_DelegationMemberList.Add(memberItem); } } } if (m_DelegationMemberList.Count < 1) // 조건에 해당하는 길드원이 없으면. { _DelegationMemberEmptyLabel.gameObject.SetActive(true); } else { _DelegationMemberEmptyLabel.gameObject.SetActive(false); } m_GuildMemberGrid.Reposition(); m_GuildMemberScrollView.ResetPosition(); }
/// <summary> /// 길드 가입요청 수락& 거절 패킷 받음. /// </summary> public void GuildJoinRequestAnswer(_stGuildJoinRequestAnswerAck stAck) { // 가입요청이 수락되면 내 길드에 길드원으로 넣고 // 길드관리에도 길드원으로 변경. // 길드원수 갱신. string str = string.Empty; CGuildMember DestMember = null; for (int i = 0; i < m_GuildDetailInfo.vMembers.Count;) { CGuildMember member = m_GuildDetailInfo.vMembers[i]; if (member == null) { continue; } if (member.kCharNo == stAck.kDestCharNo) { if (stAck.kAnswer == _enGuildJoinRequestAnswer.eGuildJoinRequestAnswer_YES) { // {플레이어 이름}\n님이 길드에 가입되었습니다.(스트링 ID : 6283) str = string.Format(StringTableManager.GetData(6283), member.kCharName); if (member.kMemberState != _enGuildMemberState.eGuildMemberState_Member) { member.kMemberState = _enGuildMemberState.eGuildMemberState_Member; DestMember = member; m_GuildDetailInfo.kCurrMemberCount++; } } else if (stAck.kAnswer == _enGuildJoinRequestAnswer.eGuildJoinRequestAnswer_NO) { // {플레이어 이름}\n님의 길드 가입을 거절하였습니다.(스트링 ID : 6279) str = string.Format(StringTableManager.GetData(6279), member.kCharName); m_GuildDetailInfo.vMembers.Remove(member); //m_GuildDetailInfo.kCurrMemberCount--; continue; } //break; } ++i; } // 6254 길드원 ({0} / {1}) string szLabeltext = string.Format(StringTableManager.GetData(6254), m_GuildDetailInfo.kCurrMemberCount, m_GuildDetailInfo.kMaxMemberCount); m_GuildMemberButton.SetLabel(szLabeltext); _MyGuild.GuildJoinRequestAnswer(stAck, DestMember, m_GuildDetailInfo); _guildModifyWindow.GuildJoinRequestAnswer(stAck, DestMember, m_GuildDetailInfo); SystemPopupWindow.Instance.SetSystemPopup(enSystemPopupType.Ok, StringTableManager.GetData(4300), str); }
/// <summary> /// 길드 가입요청 수락& 거절 패킷 받음. /// </summary> public void GuildJoinRequestAnswer(_stGuildJoinRequestAnswerAck stAck, CGuildMember member, CGuildDetail GuildDetailInfo) { bool isJoinRequest = false; for (int i = 0; i < m_MemberList.Count;) { GuildInformationItem infoItem = m_MemberList[i]; if (infoItem.MemberInfo.kCharNo == stAck.kDestCharNo) { DestroyImmediate(infoItem.gameObject); m_MemberList.Remove(infoItem); } else { ++i; if (infoItem.MemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Request) { isJoinRequest = true; } } } m_GuildMemberButton.SetEvent(isJoinRequest); if (isJoinRequest == false) { UserInfo.Instance.otherNew.GuildAlram = _enGuildAlram.eGuildNewMark_None; } if (stAck.kAnswer == _enGuildJoinRequestAnswer.eGuildJoinRequestAnswer_YES) { // 수락이면 길드원으로 다시 생성. GuildInformationItem memberItem = UIResourceMgr.CreatePrefab <GuildInformationItem>(BUNDLELIST.PREFABS_UI_GUILD, m_GuildMemberGrid.transform, "GuildInformationItem"); memberItem.Init(enGuildInfo_WindowType.GuildModify, stAck.kGuildKey, member); m_MemberList.Add(memberItem); } else if (stAck.kAnswer == _enGuildJoinRequestAnswer.eGuildJoinRequestAnswer_NO) { // 거절이면 삭제된 데이터 대입. m_GuildDetailInfo = GuildDetailInfo; } string szLabeltext = string.Format(StringTableManager.GetData(6254), GuildDetailInfo.kCurrMemberCount, GuildDetailInfo.kMaxMemberCount); m_GuildMemberButton.SetLabel(szLabeltext); SortMemberList(); }
public void SetMyGuildMember(ulong kGuildKey, _vGuildMembers vMembers) { Clear(); int iRequestCount = 0; int iCount = vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember memberInfo = vMembers[i]; if (memberInfo == null) { continue; } if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_None) { continue; } if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Request) { iRequestCount++; } // 길드요청이 테이블값 이상이면 데이터가 존재해도 UI를 추가하지 않는다. if (iRequestCount > m_iGuildWaitingCount && memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Request) { continue; } GuildInformationItem memberItem = UIResourceMgr.CreatePrefab <GuildInformationItem>(BUNDLELIST.PREFABS_UI_GUILD, m_GuildMemberGrid.transform, "GuildInformationItem"); memberItem.Init(enGuildInfo_WindowType.GuildModify, kGuildKey, memberInfo); m_MemberList.Add(memberItem); } SortMemberList(); // 길드요청이 테이블값 이상이면 팝업띄움. if (iRequestCount > m_iGuildWaitingCount) { // 4300 알림. 6277 길드 가입 신청 대기 인원이 10명 이상입니다. \n 더 이상 길드 가입 신청을 받을 수 없습니다. SystemPopupWindow.Instance.SetSystemPopup(enSystemPopupType.Ok, StringTableManager.GetData(4300), StringTableManager.GetData(6277)); } }
private void SetOtherGuildInfo(CGuildDetail kGuildDetailInfo) { m_GuildMarkSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_ICON_GUILDEMBLEM, string.Format("GuildEmblem{0}", m_GuildDetailInfo.kGuildMark.ToString("D2"))); m_GuildNameLabel.text = m_GuildDetailInfo.kGuildName; DATA_GUILD_MAIN GuildMainData = CDATA_GUILD_MAIN.Get(m_GuildDetailInfo.kGuildLevel); if (GuildMainData != null) { // string num : 12 -> LV m_GuildLevelLabel.text = string.Format("{0} {1}", StringTableManager.GetData(12), GuildMainData.iGuildLv); } CGuildMember captainInfo = null; int iCount = m_GuildDetailInfo.vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember memberInfo = m_GuildDetailInfo.vMembers[i]; if (memberInfo == null) { continue; } if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Captain) { captainInfo = memberInfo; } } if (captainInfo != null) { m_GuildCaptainLabel.text = captainInfo.kCharName; } if (m_GuildDetailInfo.kJoinMethod == _enGuildJoinMethod.eGuildJoinMethod_Free) { m_GuildJoinMethodLabel.text = StringTableManager.GetData(6233); } else if (m_GuildDetailInfo.kJoinMethod == _enGuildJoinMethod.eGuildJoinMethod_Approval) { m_GuildJoinMethodLabel.text = StringTableManager.GetData(6239); } m_GuildDescLabel.text = m_GuildDetailInfo.kGuildDesc; }
/// <summary> /// 길드 추방 패킷 받음(길드장 전용). /// </summary> public void GuildOrderLeave(_stGuildOrderLeaveAck stAck) { string strCharName = string.Empty; int iCount = m_MemberList.Count; for (int i = 0; i < iCount; ++i) { GuildInformationItem member = m_MemberList[i]; if (member == null) { continue; } if (member.MemberInfo.kCharNo == stAck.kDestCharNo) { strCharName = member.MemberInfo.kCharName; DestroyImmediate(member.gameObject); m_MemberList.Remove(member); break; } } _vGuildMembers vGuildMembers = m_GuildDetailInfo.vMembers; for (int i = 0; i < vGuildMembers.Count; ++i) { CGuildMember member = vGuildMembers[i]; if (member == null) { continue; } if (member.kCharNo == stAck.kDestCharNo) { vGuildMembers.Remove(member); break; } } m_GuildMemberGrid.Reposition(); m_GuildMemberScrollView.ResetPosition(); }
/// <summary> /// 길드 추방 패킷 받음(길드장 전용). /// </summary> public void GuildOrderLeave(_stGuildOrderLeaveAck stAck) { int iCount = m_MemberList.Count; for (int i = 0; i < iCount; ++i) { GuildInformationItem member = m_MemberList[i]; if (member == null) { continue; } if (member.MemberInfo.kCharNo == stAck.kDestCharNo) { DestroyImmediate(member.gameObject); m_MemberList.Remove(member); break; } } _vGuildMembers vGuildMembers = m_GuildDetailInfo.vMembers; for (int i = 0; i < vGuildMembers.Count; ++i) { CGuildMember member = vGuildMembers[i]; if (member == null) { continue; } if (member.kCharNo == stAck.kDestCharNo) { vGuildMembers.Remove(member); break; } } string szLabeltext = string.Format(StringTableManager.GetData(6254), m_GuildDetailInfo.vMembers.Count, m_GuildDetailInfo.kMaxMemberCount); m_GuildMemberButton.SetLabel(szLabeltext); m_GuildMemberGrid.Reposition(); m_GuildMemberScrollView.ResetPosition(); }
/// <summary> /// 길드 가입요청 수락& 거절 패킷 받음. /// </summary> public void GuildJoinRequestAnswer(_stGuildJoinRequestAnswerAck stAck, CGuildMember member, CGuildDetail GuildDetailInfo) { int iCount = m_MemberList.Count; for (int i = 0; i < iCount; ++i) { GuildInformationItem infoItem = m_MemberList[i]; if (infoItem == null) { continue; } if (infoItem.MemberInfo.kCharNo == stAck.kDestCharNo) { DestroyImmediate(infoItem.gameObject); m_MemberList.Remove(infoItem); break; } } if (stAck.kAnswer == _enGuildJoinRequestAnswer.eGuildJoinRequestAnswer_YES) { // 수락이면 길드원으로 다시 생성. GuildInformationItem memberItem = UIResourceMgr.CreatePrefab <GuildInformationItem>(BUNDLELIST.PREFABS_UI_GUILD, m_GuildMemberGrid.transform, "GuildInformationItem"); memberItem.Init(enGuildInfo_WindowType.GuildModify, stAck.kGuildKey, member); m_MemberList.Add(memberItem); } else if (stAck.kAnswer == _enGuildJoinRequestAnswer.eGuildJoinRequestAnswer_NO) { // 거절이면 삭제된 데이터 대입. m_GuildDetailInfo = GuildDetailInfo; } // 6587 {0} / {1} 명 m_TodayAttendanceCountLabel.text = string.Format(StringTableManager.GetData(6587), GuildDetailInfo.kAttendanceCount, GuildDetailInfo.kCurrMemberCount); SortMemberList(); }
/// <summary> /// 부길드장 임명 패킷 받음. /// </summary> /// <param name="stAck"></param> public void GuildOrderSubCaptain(_stGuildOrderSubCaptainAck stAck) { CGuildMember member = null; int iCount = m_GuildDetailInfo.vMembers.Count; for (int i = 0; i < iCount; ++i) { member = m_GuildDetailInfo.vMembers[i]; if (member == null) { continue; } if (member.kCharNo == stAck.kDestCharNo) { member.kMemberState = stAck.kDestChangeState; break; } } if (member.kMemberState == _enGuildMemberState.eGuildMemberState_SubCaptain) { // {길드원 이름}\n님을 부길드장으로 임명하였습니다. (스트링 ID : 6300) string str = string.Format(StringTableManager.GetData(6300), member.kCharName); SystemPopupWindow.Instance.SetSystemPopup(enSystemPopupType.Ok, StringTableManager.GetData(4300), str); } else if (member.kMemberState == _enGuildMemberState.eGuildMemberState_AbleMember) { // {플레이어 이름}\n님이 부길드장에서 해임되었습니다.(스트링 ID : 6303) string str = string.Format(StringTableManager.GetData(6303), member.kCharName); SystemPopupWindow.Instance.SetSystemPopup(enSystemPopupType.Ok, StringTableManager.GetData(4300), str); } _MyGuild.SetMyGuildMember(m_GuildDetailInfo.kGuildKey, m_GuildDetailInfo.vMembers); _guildModifyWindow.SetMyGuildMember(m_GuildDetailInfo.kGuildKey, m_GuildDetailInfo.vMembers); m_GuildDelegationPopupWindow.SetDelegationMember(enGuildInfo_WindowType.GuildSubCaptain_Appointment, m_GuildDetailInfo); }
private void GuildDelete(enSystemMessageFlag state) { if (state == enSystemMessageFlag.NO) { return; } int iGuldMemberCount = 0; int iCount = m_GuildDetailInfo.vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember member = m_GuildDetailInfo.vMembers[i]; if (member == null) { continue; } if (member.kMemberState == _enGuildMemberState.eGuildMemberState_Member || member.kMemberState == _enGuildMemberState.eGuildMemberState_AbleMember || member.kMemberState == _enGuildMemberState.eGuildMemberState_SubCaptain || member.kMemberState == _enGuildMemberState.eGuildMemberState_AbleSubCaptain) { iGuldMemberCount++; } } if (iGuldMemberCount > 0) { StartCoroutine(IeGuildDeletePopup()); return; } _stGuildDeleteReq stGuildDeleteReq = new _stGuildDeleteReq(); stGuildDeleteReq.kGuildKey = m_GuildDetailInfo.kGuildKey; CNetManager.Instance.SendPacket(CNetManager.Instance.GuildProxy.GuildDelete, stGuildDeleteReq, typeof(_stGuildDeleteAck)); }
/// <summary> /// 무료, 고급, 최고급 공물버튼 눌렀을때 받는 패킷. /// </summary> /// <param name="stAck"></param> public void RecvGuildAttendance(_stGuildAttendanceAck stAck) { if (_GuildGoddnessConfirmPopupWindow == null) { _GuildGoddnessConfirmPopupWindow = UIResourceMgr.CreatePrefab <GuildGoddnessConfirm>(BUNDLELIST.PREFABS_UI_GUILD, transform, "GuildGoddnessConfirm"); _GuildGoddnessConfirmPopupWindow.Init(stAck, _MyGuild); } _GuildGoddnessConfirmPopupWindow.OpenUI(); int iCount = m_GuildDetailInfo.vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember member = m_GuildDetailInfo.vMembers[i]; if (member == null) { continue; } if (member.kCharNo == UserInfo.Instance.CharNo) { member.kBuffKind = stAck.kGuildTributeKind; member.kUserTributeExp = stAck.kResultUserTirbuteExp; break; } } m_GuildDetailInfo.kAttendanceCount = stAck.kResultAttendanceCount; m_GuildDetailInfo.kGuildExp = stAck.kResultGuildTributeExp; m_GuildDetailInfo.kGuildLevel = stAck.kResultGuildLevel; GuildDetailInfoAck(m_GuildDetailInfo); SetAttendenceReward(stAck.kRecvGuildAttendanceKey); }
//=================================================================================== // // Method // //=================================================================================== public void Init(enGuildInfo_WindowType type, ulong kGuildKey, CGuildMember member) { m_DelegationButtonLabel.text = StringTableManager.GetData(6294); // 6294 길드장 위임 m_AppointButtonLabel.text = StringTableManager.GetData(6298); // 6298 부길드장 임명 m_BgMeSprite.gameObject.SetActive(false); m_CaptainCrown.gameObject.SetActive(false); m_SubCaptainCrown.gameObject.SetActive(false); m_kGuildKey = kGuildKey; m_MemberInfo = member; m_NameLabel.text = m_MemberInfo.kCharName; m_LevelLabel.text = string.Format("{0} {1}", StringTableManager.GetData(12), m_MemberInfo.kCharLevel); // 12번 텍스트 LV DATA_VIP VipData = CDATA_VIP.Get(m_MemberInfo.kCharVIPLevel); if (VipData != null) { m_VipRankSprite.spriteName = VipData.szGradeImg; } m_VipRankLabel.text = string.Format(StringTableManager.GetData(4984), (int)m_MemberInfo.kCharVIPLevel); DATA_CREATURE_NEWVER CreatureData = CDATA_CREATURE_NEWVER.Get(m_MemberInfo.kLeaderCreatureID); if (CreatureData != null) { int iCreatureTID = CDATA_CREATURE_NEWVER.Get(m_MemberInfo.kLeaderCreatureID).m_iCreatureTID; DATA_CREATURE_NEWVER pCreatureData = UtilFunc.GetCreatureDataByTID(iCreatureTID); m_CreatureSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_ICON_CREATUREHEAD, pCreatureData.m_szIcon); } // 공물형태가 무엇인지? { // 6856 무료 공물 _GoddnessTributeFreeLabel.text = StringTableManager.GetData(6856); _GoddnessTributeFreeObj.SetActive(false); _GoddnessTributeGoodObj.SetActive(false); _GoddnessTributeExtraObj.SetActive(false); _attendanceReward.state = ButtonState.Off; DateTime MemberAttendanceTime = m_MemberInfo.kGuildAttendanceTime.GetDateTime(); if (MemberAttendanceTime.Date >= TimeManager.Instance.GetServerTime().Date&& (m_MemberInfo.kBuffKind != DATA_GUILD_TRIBUTE._enTributeEnum.None && m_MemberInfo.kBuffKind != DATA_GUILD_TRIBUTE._enTributeEnum._enTributeEnum_Max)) { _attendanceReward.state = ButtonState.On; DATA_GUILD_TRIBUTE._enTributeEnum GuildBuffKind = m_MemberInfo.kBuffKind; DATA_GUILD_TRIBUTE GuildTributeData = CDATA_GUILD_TRIBUTE.Get(GuildBuffKind); if (GuildTributeData == null) { return; // error } _attendanceReward.SetOnLabel(string.Format(StringTableManager.GetData(8679), GuildTributeData.iKeyAmount)); int iCount = CDATA_GUILD_MAIN.GetCount(); for (int i = 0; i < iCount; ++i) { DATA_GUILD_MAIN GuildMainData = CDATA_GUILD_MAIN.GetByIndex(i); if (GuildMainData == null) { continue; } if (GuildMainData.enTributeFree == GuildBuffKind) { _GoddnessTributeFreeObj.SetActive(true); break; } else if (GuildMainData.enTributeGood == GuildBuffKind) { _GoddnessTributeGoodObj.SetActive(true); break; } else if (GuildMainData.enTributeExtra == GuildBuffKind) { _GoddnessTributeExtraObj.SetActive(true); break; } } } } if (type == enGuildInfo_WindowType.MyGuild) { _ContributionTitleLabel.gameObject.SetActive(true); _ContributionPointLabel.gameObject.SetActive(true); _attendanceReward.gameObject.SetActive(true); // 6905 기여도 _ContributionTitleLabel.text = StringTableManager.GetData(6905); _ContributionPointLabel.text = m_MemberInfo.kUserTributeExp.ToString(); // 기여도 점수. } else { _ContributionTitleLabel.gameObject.SetActive(false); _ContributionPointLabel.gameObject.SetActive(false); _attendanceReward.gameObject.SetActive(false); } if (m_MemberInfo.kAccessState == _enGuildMemberAccessState.eAccess_Yes) { _MemberLogOffObj.SetActive(false); // 3473 접속중 m_LastConnectLabel.text = string.Format(StringTableManager.GetData(3473)); } else { if (UserInfo.Instance.CharNo == m_MemberInfo.kCharNo) { _MemberLogOffObj.SetActive(false); // 3473 접속중 m_LastConnectLabel.text = string.Format(StringTableManager.GetData(3473)); } else { if (m_kGuildKey == UserInfo.Instance.GuildKey) { // 내가 속한 길드일때만 길드원의 접속여부를 확인한다. _MemberLogOffObj.SetActive(true); } else { _MemberLogOffObj.SetActive(false); } System.TimeSpan timeresult = TimeManager.Instance.GetServerTime() - m_MemberInfo.kLastLogonTime.GetDateTime(); if (timeresult.Days > 0) { // 6589 {0} 일 전. m_LastConnectLabel.text = string.Format(StringTableManager.GetData(6589), timeresult.Days); } else if (timeresult.Hours > 0) { // 6590 {0} 시간 전. m_LastConnectLabel.text = string.Format(StringTableManager.GetData(6590), timeresult.Hours); } else { // 6591 {0} 시간 미만. m_LastConnectLabel.text = string.Format(StringTableManager.GetData(6591), "1"); } } } if (m_MemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Captain) { m_CaptainCrown.gameObject.SetActive(true); } else if (m_MemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_SubCaptain || m_MemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_AbleSubCaptain) { m_SubCaptainCrown.gameObject.SetActive(true); } bool IsMine = false; // 내 캐릭인지 if (m_MemberInfo.kCharNo == UserInfo.Instance.CharNo) { m_BgMeSprite.gameObject.SetActive(true); IsMine = true; } SetButton(type, m_MemberInfo.kMemberState, IsMine); }
private void SetMyGuildInfo(CGuildDetail guildDetail) { m_GuildLeaveButton.SetActive(false); m_GuildModifyButton.SetActive(false); m_GuildSubCaptainButtonObj.SetActive(false); // 부길드장이 사용하는 버튼. m_CommissionCheckButton.gameObject.SetActive(true); // 6587 {0} / {1} 명 m_TodayAttendanceCountLabel.text = string.Format(StringTableManager.GetData(6587), guildDetail.kAttendanceCount, guildDetail.kCurrMemberCount); m_GuildMarkSprite.sprite2D = UIResourceMgr.CreateSprite(BUNDLELIST.TEXTURE_ICON_GUILDEMBLEM, string.Format("GuildEmblem{0}", guildDetail.kGuildMark.ToString("D2"))); m_GuildNameLabel.text = guildDetail.kGuildName; DATA_GUILD_MAIN GuildMainData = CDATA_GUILD_MAIN.Get(guildDetail.kGuildLevel); if (GuildMainData != null) { // string num : 12 -> LV m_GuildLevelLabel.text = string.Format("{0} {1}", StringTableManager.GetData(12), GuildMainData.iGuildLv); float GuildExpPercentage = guildDetail.kGuildExp / (float)GuildMainData.iGexp; _GuildLevelGageSprite.fillAmount = GuildExpPercentage; _GuildLevelGageLabel.text = string.Format("{0}%", (GuildExpPercentage * 100).ToString("F2")); } bool isRequestMember = false; CGuildMember captainInfo = null; int iCount = guildDetail.vMembers.Count; for (int i = 0; i < iCount; ++i) { CGuildMember memberInfo = guildDetail.vMembers[i]; if (memberInfo == null) { continue; } if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Captain) { captainInfo = memberInfo; } else if (memberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Request) { isRequestMember = true; } if (memberInfo.kCharNo == UserInfo.Instance.CharNo) { m_MyMemberInfo = memberInfo; UserInfo.Instance.GuildKey = guildDetail.kGuildKey; UserInfo.Instance.GuildName = guildDetail.kGuildName; UserInfo.Instance.CharGuildState = m_MyMemberInfo.kMemberState; } } if (captainInfo != null) { m_GuildCaptainLabel.text = captainInfo.kCharName; } if (guildDetail.kJoinMethod == _enGuildJoinMethod.eGuildJoinMethod_Free) { m_GuildJoinMethodLabel.text = StringTableManager.GetData(6233); } else if (guildDetail.kJoinMethod == _enGuildJoinMethod.eGuildJoinMethod_Approval) { m_GuildJoinMethodLabel.text = StringTableManager.GetData(6239); } SetJoinMethodButton(guildDetail.kJoinMethod); SetNoticeOrDescButton(enNoticeAndDesc.Notice); // 공지사항이 디폴트. if (m_MyMemberInfo != null) { if (m_MyMemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_Captain) // 길드장. { m_GuildModifyButton.SetActive(true); m_CommissionCheckButton.gameObject.SetActive(false); if (isRequestMember == true) { UserInfo.Instance.otherNew.GuildAlram = _enGuildAlram.eGuildNewMark_NewMember; } } else if (m_MyMemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_SubCaptain || // 부길드장. m_MyMemberInfo.kMemberState == _enGuildMemberState.eGuildMemberState_AbleSubCaptain) { m_GuildSubCaptainButtonObj.SetActive(true); m_GuildSubCaptainLeaveButton.SetActive(true); m_GuildSubCaptainModifyButton.SetActive(true); if (isRequestMember == true) { UserInfo.Instance.otherNew.GuildAlram = _enGuildAlram.eGuildNewMark_NewMember; } } else // 길드원. { m_GuildLeaveButton.SetActive(true); UserInfo.Instance.otherNew.GuildAlram = _enGuildAlram.eGuildNewMark_None; } SetCommissionCheckButton(m_MyMemberInfo.kMemberState); } }