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