hch
2026-03-26 1898a5f28dfffa7bbecf5d2bf024f20b8d0490e7
Main/System/Guild/GuildManager.cs
@@ -64,10 +64,13 @@
    private void OnRefreshFairyInfo()
    {
        UpdateRequestRedpoint();
        UpdateDonateRedPoint();
    }
    void OnBeforePlayerDataInitialize()
    {
        zoneID = 0;
        crossServerIDList.Clear();
        ClearGuildData();
        donateCntList = null;
    }
@@ -75,6 +78,8 @@
    void OnBeforePlayerDataInitializeEx()
    {
        isQueryZBGYet = false;
        //增量的形式
        PlayerDatas.Instance.fairyData.ClearData();
    }
    void OnPlayerLoginOk()
@@ -168,7 +173,24 @@
    //珍宝阁(行商)
    public int zhenbaogeCutState = 0;
    int m_ZhenbaogeCutState = 0;
    public int zhenbaogeCutState
    {
        get
        {
            if (familyZBGActions.Count - 1 >= 50)
            {
                //砍价人数超过上限后可直接购买
                m_ZhenbaogeCutState = 1;
            }
            return m_ZhenbaogeCutState;
        }
        set
        {
            m_ZhenbaogeCutState = value;
        }
    }
    public int zhenbaogeBuyState = 0;
    public bool needCheckCutCD = false;
    public event Action UpdateZhenbaogeEvent;
@@ -349,7 +371,7 @@
                punishTime = quitGuildPunishTime[Math.Min(quitCount, quitGuildPunishTime.Length - 1)];
        }
        return punishTime * 60 - (TimeUtility.AllSeconds - PlayerDatas.Instance.baseData.leaveFamilyTime);
        return punishTime * 60 - (TimeUtility.GetCommServerTick(zoneID)- PlayerDatas.Instance.baseData.leaveFamilyTime);
    }
@@ -644,22 +666,6 @@
        GameNetSystem.Instance.SendInfo(pack);
    }
    public void SendFindGuildNoDecrypt(string msg, int pageIndex = 0, int pageSize = 20)
    {
        if (pageIndex == 0)
        {
            //默认查询第一页即代表重新开始查询,清空之前的数据
            guildsDict.Clear();
            pageIndexList.Clear();
        }
        var pack = new CA620_tagCMViewFamilyPage();
        pack.Msg = msg;
        pack.MsgLen = (byte)msg.Length;
        pack.PageIndex = (byte)pageIndex;
        pack.ShowCount = (byte)pageSize;
        GameNetSystem.Instance.SendInfo(pack);
    }
    public static void SetFairyViewData(FairyData data, HA523_tagMCFamilyViewList.tagMCFamilyView view)
    {
        data.Rank = view.Rank;
@@ -678,6 +684,43 @@
        data.MemberCount = view.MemberCount;
    }
    #endregion
    #region 查看目标公会
    public Dictionary<int, FairyData> viewGuildsDict = new Dictionary<int, FairyData>();
    public event Action OnUpdateViewFamilyInfo;
    public void UpdateViewFamilyInfo(HA519_tagSCTagFamilyInfo pack)
    {
        FairyData data = new FairyData();
        SetFairyViewData(data, pack);
        viewGuildsDict[(int)data.FamilyID] = data;
        OnUpdateViewFamilyInfo?.Invoke();
    }
    public static void SetFairyViewData(FairyData data, HA519_tagSCTagFamilyInfo view)
    {
        data.FamilyID = (int)view.FamilyID;
        data.FamilyName = view.FamilyName;
        data.LeaderID = (int)view.LeaderID;
        data.LeaderServerID = (int)view.LeaderServerID;
        data.LeaderName = view.LeaderName;
        data.FamilyLV = view.FamilyLV;
        data.ServerID = (int)view.ServerID;
        data.EmblemID = (int)view.EmblemID;
        data.EmblemWord = view.EmblemWord;
        data.totalFightPower = view.FightPowerEx * Constants.ExpPointValue + view.FightPower;
        data.MemberCount = view.MemberCount;
    }
    public void SendViewGuild(int fairyID, int serverID)
    {
        var pack = new CA619_tagCSViewTagFamily();
        pack.FamilyID = (uint)fairyID;
        pack.DataServerID = (uint)serverID;
        GameNetSystem.Instance.SendInfo(pack);
    }
    #endregion
    #region 申请列表
@@ -1118,7 +1161,7 @@
        {
            return;
        }
        if (TimeUtility.ServerNow.Hour < 10)
        if (TimeUtility.GetCommServerNow(zoneID).Hour < 10)
            return;
        if (zhenbaogeCutState == 0)