From 9921b8a0a3335a59658041f7702c2c78b3bf64ab Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期三, 10 六月 2026 17:58:36 +0800
Subject: [PATCH] 588 公会信息界面从仅显示会长信息改成滚动条显示所有成员信息,同步A519封包

---
 Main/System/Guild/GuildManager.cs |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/Main/System/Guild/GuildManager.cs b/Main/System/Guild/GuildManager.cs
index c37afb5..e316b1b 100644
--- a/Main/System/Guild/GuildManager.cs
+++ b/Main/System/Guild/GuildManager.cs
@@ -689,14 +689,41 @@
     #region 鏌ョ湅鐩爣鍏細
     public Dictionary<int, FairyData> viewGuildsDict = new Dictionary<int, FairyData>();
 
-    public event Action OnUpdateViewFamilyInfo;
+    public event Action<int> OnUpdateViewFamilyInfo;
 
     public void UpdateViewFamilyInfo(HA519_tagSCTagFamilyInfo pack)
     {
         FairyData data = new FairyData();
         SetFairyViewData(data, pack);
+
+        // 瀛樺偍骞舵帓搴忔垚鍛樺垪琛�
+        var memberList = new List<HA519_tagSCTagFamilyInfo.tagSCTagFamilyInfoMem>(pack.MemberList);
+        memberList.Sort((a, b) =>
+        {
+            // 涓绘帓搴忥細鑱屽姟闄嶅簭锛�3-鏃忛暱 > 2-鍓棌闀� > 1-绮捐嫳 > 0-鎴愬憳锛�
+            int jobCompare = b.FmLV.CompareTo(a.FmLV);
+            if (jobCompare != 0) return jobCompare;
+            // 娆℃帓搴忥細鎴樺姏闄嶅簭
+            long powerA = a.FightPowerEx * Constants.ExpPointValue + a.FightPower;
+            long powerB = b.FightPowerEx * Constants.ExpPointValue + b.FightPower;
+            return powerB.CompareTo(powerA);
+        });
+        data.memberList = memberList;
+
         viewGuildsDict[(int)data.FamilyID] = data;
-        OnUpdateViewFamilyInfo?.Invoke();
+        OnUpdateViewFamilyInfo?.Invoke((int)data.FamilyID);
+    }
+
+    /// <summary>
+    /// 鑾峰彇鎸囧畾鍏細鐨勬帓搴忓悗鐨勬垚鍛樺垪琛紙鑱屽姟闄嶅簭 鈫� 鎴樺姏闄嶅簭锛�
+    /// </summary>
+    public List<HA519_tagSCTagFamilyInfo.tagSCTagFamilyInfoMem> GetSortedMemberList(int familyID)
+    {
+        if (viewGuildsDict.TryGetValue(familyID, out var data))
+        {
+            return data.memberList;
+        }
+        return null;
     }
 
     public static void SetFairyViewData(FairyData data, HA519_tagSCTagFamilyInfo view)

--
Gitblit v1.8.0