using System.Collections; 
 | 
using System.Collections.Generic; 
 | 
using UnityEngine; 
 | 
using UnityEngine.UI; 
 | 
  
 | 
/// <summary> 
 | 
/// 查看其他公会界面 
 | 
/// </summary> 
 | 
public class GuildPreviewWin : UIBase 
 | 
{ 
 | 
    [SerializeField] GuildEmblemCell guildEmblem; 
 | 
    [SerializeField] Text guildMemberCountText; 
 | 
    [SerializeField] Text totalFightPowerText; 
 | 
    [SerializeField] Text guildLevelText; 
 | 
    [SerializeField] Text guildNameText; //加服务器信息 
 | 
    [SerializeField] Text guildNumText; //加公会编号 
 | 
    [SerializeField] Button copyBtn; 
 | 
    [SerializeField] Text noticeText; //公告 
 | 
    [SerializeField] AvatarCell leaderAvatar; 
 | 
    [SerializeField] OfficialTitleCell leaderTitle; 
 | 
    [SerializeField] Text leaderLevelText; 
 | 
    [SerializeField] Text guildJobText; 
 | 
    [SerializeField] Text leaderNameText; 
 | 
    [SerializeField] Text leaderFightPowerText; 
 | 
    [SerializeField] Button seePlayerBtn; 
 | 
  
 | 
    [SerializeField] Button opearteBtn; 
 | 
    [SerializeField] Text opearteBtnText; 
 | 
  
 | 
  
 | 
    int guildID; 
 | 
    int leaderID; 
 | 
    protected override void InitComponent() 
 | 
    { 
 | 
        opearteBtn.AddListener(() => 
 | 
        { 
 | 
            var guildInfo = GuildManager.Instance.guildsDict[guildID]; 
 | 
            if (guildInfo == null) return; 
 | 
            var state = GuildManager.Instance.GetRequestState(guildInfo); 
 | 
            GuildManager.Instance.SendApplyGuild(guildID, state == 2 ? 1 : 0); 
 | 
        }); 
 | 
  
 | 
        copyBtn.AddListener(() => 
 | 
        { 
 | 
            var guildInfo = GuildManager.Instance.guildsDict[guildID]; 
 | 
            if (guildInfo == null) return; 
 | 
            UIHelper.CopyToClipboard(guildNumText.text); 
 | 
            SysNotifyMgr.Instance.ShowTip("GuildSys8"); 
 | 
        }); 
 | 
  
 | 
        seePlayerBtn.AddListener(() => 
 | 
        { 
 | 
            OtherPlayerDetailManager.Instance.ViewPlayerDetail(leaderID); 
 | 
        }); 
 | 
    } 
 | 
  
 | 
    protected override void OnPreOpen() 
 | 
    { 
 | 
        OtherPlayerDetailManager.Instance.OnRevPackage += OnRevLeaderPackage; 
 | 
        guildID = functionOrder; 
 | 
  
 | 
        Display(); 
 | 
    } 
 | 
  
 | 
    protected override void OnPreClose() 
 | 
    { 
 | 
        OtherPlayerDetailManager.Instance.OnRevPackage -= OnRevLeaderPackage; 
 | 
  
 | 
    } 
 | 
  
 | 
    void Display() 
 | 
    { 
 | 
        var guildInfo = GuildManager.Instance.guildsDict[guildID]; 
 | 
        if (guildInfo == null) return; 
 | 
        leaderID = guildInfo.LeaderID; 
 | 
        OtherPlayerDetailManager.Instance.ViewPlayerDetail(leaderID, (int)ViewPlayerType.viewGuildLeader); 
 | 
  
 | 
        var config = FamilyConfig.Get(guildInfo.FamilyLV); 
 | 
        guildEmblem.Display(guildInfo.EmblemID, guildInfo.EmblemWord, 1.3f); 
 | 
        guildMemberCountText.text = guildInfo.MemberCount + "/" + config.MemberMax; 
 | 
        totalFightPowerText.text = UIHelper.ReplaceLargeArtNum(guildInfo.totalFightPower); 
 | 
        guildLevelText.text = Language.Get("L1094") + guildInfo.FamilyLV; 
 | 
        guildNameText.text = guildInfo.FamilyName + Language.Get("L1039", ServerListCenter.Instance.GetServerName(guildInfo.ServerID)); 
 | 
        guildNumText.text = GuildManager.Instance.EncryptGuildID(guildInfo.FamilyID); 
 | 
        leaderNameText.text = guildInfo.LeaderName; 
 | 
        noticeText.text = guildInfo.Broadcast; 
 | 
  
 | 
  
 | 
        var state = GuildManager.Instance.GetRequestState(guildInfo); 
 | 
  
 | 
        string key = ""; 
 | 
        switch (state) 
 | 
        { 
 | 
            case 1: 
 | 
                key = "Guild_17"; 
 | 
                break; 
 | 
            case 2: 
 | 
                key = "Guild_21"; 
 | 
                break; 
 | 
            default: 
 | 
                key = "Guild_22"; 
 | 
                break; 
 | 
        } 
 | 
        opearteBtnText.text = Language.Get(key); 
 | 
  
 | 
    } 
 | 
  
 | 
  
 | 
  
 | 
    void OnRevLeaderPackage(int viewType, int playerID) 
 | 
    { 
 | 
        if (viewType != (int)ViewPlayerType.viewGuildLeader) 
 | 
        { 
 | 
            return; 
 | 
        } 
 | 
        if (playerID != leaderID) 
 | 
        { 
 | 
            return; 
 | 
        } 
 | 
        var leaderInfo = OtherPlayerDetailManager.Instance.GetViewPlayerData(playerID); 
 | 
  
 | 
        leaderAvatar.InitUI(AvatarHelper.GetAvatarModel(0, leaderInfo.Face, leaderInfo.FacePic)); 
 | 
        leaderTitle.InitUI(leaderInfo.RealmLV, leaderInfo.TitleID); 
 | 
        leaderLevelText.text = leaderInfo.LV.ToString(); 
 | 
        guildJobText.text = RichTextMsgReplaceConfig.GetRichReplace("FAMILY", 3); 
 | 
        leaderFightPowerText.text = UIHelper.ReplaceLargeArtNum(leaderInfo.FightPower); 
 | 
    } 
 | 
  
 | 
} 
 |