//=================================================================================== // // 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(); }
private void SetButton(enGuildInfo_WindowType type, _enGuildMemberState state, bool IsMine) { m_DismissButtonLabel.text = StringTableManager.GetData(6301); //m_AttendanceButton.gameObject.SetActive(false); // 출석버튼. m_RejectButton.SetActive(false); // 길드가입 거절버튼(길드장 전용). m_ApprovalButton.SetActive(false); // 길드가입 수락버튼(길드장 전용). m_DeleteButton.SetActive(false); // 길드원 추방버튼. m_DismissButton.SetActive(false); // 부길드장 해임 버튼(길드장 전용). m_DelegationButton.SetActive(false); // 길드장 위임버튼(길드장 전용). m_AppointButton.SetActive(false); // 부길드장 임명버튼(길드장 전용). if (IsMine == true) { m_HomeButton.gameObject.SetActive(false); // 방문버튼. //m_HomeButton.state = ButtonState.Off; } else { m_HomeButton.gameObject.SetActive(true); // 방문버튼. m_HomeButton.state = ButtonState.On; } if (type == enGuildInfo_WindowType.MyGuild) { } else if (type == enGuildInfo_WindowType.GuildModify) { if (UserInfo.Instance.CharGuildState == _enGuildMemberState.eGuildMemberState_Captain) { if (state == _enGuildMemberState.eGuildMemberState_SubCaptain || state == _enGuildMemberState.eGuildMemberState_AbleSubCaptain) { m_DismissButton.SetActive(true); } } if (state == _enGuildMemberState.eGuildMemberState_Request) { m_ApprovalButton.SetActive(true); m_RejectButton.SetActive(true); } else if (state == _enGuildMemberState.eGuildMemberState_AbleMember || state == _enGuildMemberState.eGuildMemberState_Member) { m_DeleteButton.SetActive(true); } } else if (type == enGuildInfo_WindowType.GuildCaptain_Delegation) { m_HomeButton.gameObject.SetActive(false); m_DelegationButton.SetActive(true); } else if (type == enGuildInfo_WindowType.GuildSubCaptain_Appointment) { m_HomeButton.gameObject.SetActive(false); m_AppointButton.SetActive(true); } }
public void OnGuildOrderSubCaptain(GameObject go) { if (go != null) { SoundManager.Instance.PlayFX(enSoundFXUI.BUTTON_MEDIUM); } m_enGuildInfoWindowType = enGuildInfo_WindowType.GuildSubCaptain_Appointment; OpenGuildDelegationPopup(enSystemMessageFlag.YES); }
/// <summary> /// 길드장 위임 버튼. /// </summary> /// <param name="go"></param> public void OnGuildDelegation(GameObject go) { if (go != null) { SoundManager.Instance.PlayFX(enSoundFXUI.BUTTON_MEDIUM); } if (UserInfo.Instance.Gold < (ulong)m_iGuildDelegateCountGold) { SystemPopupWindow.Instance.SetSystemPopup(enSystemPopupType.Ok, StringTableManager.GetData(4300), StringTableManager.GetData(6296)); return; } m_enGuildInfoWindowType = enGuildInfo_WindowType.GuildCaptain_Delegation; string str = string.Format(StringTableManager.GetData(6291), m_iGuildDelegateCountGold); SystemPopupWindow.Instance.OpenSystemPopUp(enSystemPopupType.YesNo, StringTableManager.GetData(4300), str, OpenGuildDelegationPopup); }
//=================================================================================== // // 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); }