using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; /// /// 公会大厅 成员调整,踢出 /// public class GuildMemberOPCell : CellView { [SerializeField] Button kickBtn; [SerializeField] Button opearteJobBtn; [SerializeField] Button normalJobBtn; [SerializeField] Button leaderJobBtn; [SerializeField] Button viceLeaderJobBtn; [SerializeField] Button eliteJobBtn; bool showBtn = false; public void Display(int index, bool _showBtn) { var playerID = PlayerDatas.Instance.fairyData.memberIDList[index]; var playerInfo = PlayerDatas.Instance.fairyData.GetMember(playerID); var config = FamilyConfig.Get(PlayerDatas.Instance.fairyData.fairy.FamilyLV); showBtn = _showBtn; opearteJobBtn.AddListener(() => { showBtn = !showBtn; UpdateBtn(); }); UpdateBtn(); normalJobBtn.AddListener(() => { ChangeFMLV(playerInfo, 0); }); eliteJobBtn.AddListener(() => { ChangeFMLV(playerInfo, 1); }); viceLeaderJobBtn.AddListener(() => { if (PlayerDatas.Instance.fairyData.deputyLeaderPlayerIDList.Count >= config.DeputyLeaderMax) { SysNotifyMgr.Instance.ShowTip("GuildSys10"); return; } ChangeFMLV(playerInfo, 2); }); leaderJobBtn.AddListener(() => { if (PlayerDatas.Instance.fairyData.mine.FmLV != 3) return; if (playerInfo.FmLV != 2) { SysNotifyMgr.Instance.ShowTip("GuildSys12"); return; } ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("Guild_28", playerInfo.Name), (bool isOK) => { if (isOK) { GuildManager.Instance.SendChangeMemberLV(playerInfo.PlayerID, 3); SysNotifyMgr.Instance.ShowTip("GuildSys13"); GuildManager.Instance.memberOPIndex = -1; } }); }); kickBtn.AddListener(() => { ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("Guild_33", playerInfo.Name), (bool isOK) => { if (isOK) { GuildManager.Instance.KickMember(playerID); GuildManager.Instance.memberOPIndex = -1; } }); }); } void UpdateBtn() { leaderJobBtn.SetActive(showBtn && PlayerDatas.Instance.fairyData.mine.FmLV == 3); viceLeaderJobBtn.SetActive(showBtn && PlayerDatas.Instance.fairyData.mine.FmLV == 3); eliteJobBtn.SetActive(showBtn && PlayerDatas.Instance.fairyData.mine.FmLV >= 2); normalJobBtn.SetActive(showBtn && PlayerDatas.Instance.fairyData.mine.FmLV >= 2); } void ChangeFMLV(FairyMember playerInfo, int lv) { if (playerInfo.FmLV == lv) { SysNotifyMgr.Instance.ShowTip("GuildSys14"); return; } ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("Guild_31", playerInfo.Name, lv), (bool isOK) => { if (isOK) { GuildManager.Instance.SendChangeMemberLV(playerInfo.PlayerID, lv); GuildManager.Instance.memberOPIndex = -1; } }); } }