From a0dd1dc92bb2f6eb7067a624df20a9c326ecde87 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 06 二月 2026 22:14:54 +0800
Subject: [PATCH] 66 【公会】基础主体-服务端(修改A619,A523封包结构;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py |  176 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 176 insertions(+), 0 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 1068d12..60d485f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -10988,6 +10988,7 @@
     LeaderID = 0    #(DWORD LeaderID)//族长ID
     LeaderNameLen = 0    #(BYTE LeaderNameLen)
     LeaderName = ""    #(String LeaderName)//size = LeaderNameLen
+    LeaderServerID = 0    #(DWORD LeaderServerID)//族长服务器ID
     FamilyLV = 0    #(BYTE FamilyLV)//家族等级
     JoinReview = 0    #(BYTE JoinReview)//成员加入是否需要审核,默认0自动加入
     JoinLVMin = 0    #(WORD JoinLVMin)//限制最低可加入的玩家等级
@@ -11012,6 +11013,7 @@
         self.LeaderID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.LeaderNameLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.LeaderName,_pos = CommFunc.ReadString(_lpData, _pos,self.LeaderNameLen)
+        self.LeaderServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.FamilyLV,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.JoinReview,_pos = CommFunc.ReadBYTE(_lpData, _pos)
         self.JoinLVMin,_pos = CommFunc.ReadWORD(_lpData, _pos)
@@ -11031,6 +11033,7 @@
         self.LeaderID = 0
         self.LeaderNameLen = 0
         self.LeaderName = ""
+        self.LeaderServerID = 0
         self.FamilyLV = 0
         self.JoinReview = 0
         self.JoinLVMin = 0
@@ -11051,6 +11054,7 @@
         length += 4
         length += 1
         length += len(self.LeaderName)
+        length += 4
         length += 1
         length += 1
         length += 2
@@ -11072,6 +11076,7 @@
         data = CommFunc.WriteDWORD(data, self.LeaderID)
         data = CommFunc.WriteBYTE(data, self.LeaderNameLen)
         data = CommFunc.WriteString(data, self.LeaderNameLen, self.LeaderName)
+        data = CommFunc.WriteDWORD(data, self.LeaderServerID)
         data = CommFunc.WriteBYTE(data, self.FamilyLV)
         data = CommFunc.WriteBYTE(data, self.JoinReview)
         data = CommFunc.WriteWORD(data, self.JoinLVMin)
@@ -11092,6 +11097,7 @@
                                 LeaderID:%d,
                                 LeaderNameLen:%d,
                                 LeaderName:%s,
+                                LeaderServerID:%d,
                                 FamilyLV:%d,
                                 JoinReview:%d,
                                 JoinLVMin:%d,
@@ -11110,6 +11116,7 @@
                                 self.LeaderID,
                                 self.LeaderNameLen,
                                 self.LeaderName,
+                                self.LeaderServerID,
                                 self.FamilyLV,
                                 self.JoinReview,
                                 self.JoinLVMin,
@@ -11693,6 +11700,175 @@
 
 
 #------------------------------------------------------
+# A5 19 查看目标公会信息 #tagSCTagFamilyInfo
+
+class  tagSCTagFamilyInfo(Structure):
+    Head = tagHead()
+    FamilyID = 0    #(DWORD FamilyID)//家族ID
+    FamilyNameLen = 0    #(BYTE FamilyNameLen)
+    FamilyName = ""    #(String FamilyName)//size = FamilyNameLen
+    LeaderID = 0    #(DWORD LeaderID)//族长ID
+    LeaderNameLen = 0    #(BYTE LeaderNameLen)
+    LeaderName = ""    #(String LeaderName)//size = LeaderNameLen
+    LeaderServerID = 0    #(DWORD LeaderServerID)//会长区服ID
+    FamilyLV = 0    #(BYTE FamilyLV)//家族等级
+    ServerID = 0    #(DWORD ServerID)//区服ID
+    EmblemID = 0    #(DWORD EmblemID)//徽章ID
+    EmblemWord = ""    #(char EmblemWord[3])//徽章文字
+    FightPower = 0    #(DWORD FightPower)//总战力,求余亿部分
+    FightPowerEx = 0    #(DWORD FightPowerEx)//总战力,整除亿部分
+    BroadcastLen = 0    #(WORD BroadcastLen)//公告
+    Broadcast = ""    #(String Broadcast)//size = BroadcastLen
+    MemberCount = 0    #(BYTE MemberCount)//成员人数
+    DataServerID = 0    #(DWORD DataServerID)//数据所在服务器ID
+    data = None
+
+    def __init__(self):
+        self.Clear()
+        self.Head.Cmd = 0xA5
+        self.Head.SubCmd = 0x19
+        return
+
+    def ReadData(self, _lpData, _pos=0, _Len=0):
+        self.Clear()
+        _pos = self.Head.ReadData(_lpData, _pos)
+        self.FamilyID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FamilyNameLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.FamilyName,_pos = CommFunc.ReadString(_lpData, _pos,self.FamilyNameLen)
+        self.LeaderID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.LeaderNameLen,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.LeaderName,_pos = CommFunc.ReadString(_lpData, _pos,self.LeaderNameLen)
+        self.LeaderServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FamilyLV,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.ServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.EmblemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.EmblemWord,_pos = CommFunc.ReadString(_lpData, _pos,3)
+        self.FightPower,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FightPowerEx,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.BroadcastLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.Broadcast,_pos = CommFunc.ReadString(_lpData, _pos,self.BroadcastLen)
+        self.MemberCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.DataServerID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        return _pos
+
+    def Clear(self):
+        self.Head = tagHead()
+        self.Head.Clear()
+        self.Head.Cmd = 0xA5
+        self.Head.SubCmd = 0x19
+        self.FamilyID = 0
+        self.FamilyNameLen = 0
+        self.FamilyName = ""
+        self.LeaderID = 0
+        self.LeaderNameLen = 0
+        self.LeaderName = ""
+        self.LeaderServerID = 0
+        self.FamilyLV = 0
+        self.ServerID = 0
+        self.EmblemID = 0
+        self.EmblemWord = ""
+        self.FightPower = 0
+        self.FightPowerEx = 0
+        self.BroadcastLen = 0
+        self.Broadcast = ""
+        self.MemberCount = 0
+        self.DataServerID = 0
+        return
+
+    def GetLength(self):
+        length = 0
+        length += self.Head.GetLength()
+        length += 4
+        length += 1
+        length += len(self.FamilyName)
+        length += 4
+        length += 1
+        length += len(self.LeaderName)
+        length += 4
+        length += 1
+        length += 4
+        length += 4
+        length += 3
+        length += 4
+        length += 4
+        length += 2
+        length += len(self.Broadcast)
+        length += 1
+        length += 4
+
+        return length
+
+    def GetBuffer(self):
+        data = ''
+        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+        data = CommFunc.WriteDWORD(data, self.FamilyID)
+        data = CommFunc.WriteBYTE(data, self.FamilyNameLen)
+        data = CommFunc.WriteString(data, self.FamilyNameLen, self.FamilyName)
+        data = CommFunc.WriteDWORD(data, self.LeaderID)
+        data = CommFunc.WriteBYTE(data, self.LeaderNameLen)
+        data = CommFunc.WriteString(data, self.LeaderNameLen, self.LeaderName)
+        data = CommFunc.WriteDWORD(data, self.LeaderServerID)
+        data = CommFunc.WriteBYTE(data, self.FamilyLV)
+        data = CommFunc.WriteDWORD(data, self.ServerID)
+        data = CommFunc.WriteDWORD(data, self.EmblemID)
+        data = CommFunc.WriteString(data, 3, self.EmblemWord)
+        data = CommFunc.WriteDWORD(data, self.FightPower)
+        data = CommFunc.WriteDWORD(data, self.FightPowerEx)
+        data = CommFunc.WriteWORD(data, self.BroadcastLen)
+        data = CommFunc.WriteString(data, self.BroadcastLen, self.Broadcast)
+        data = CommFunc.WriteBYTE(data, self.MemberCount)
+        data = CommFunc.WriteDWORD(data, self.DataServerID)
+        return data
+
+    def OutputString(self):
+        DumpString = '''
+                                Head:%s,
+                                FamilyID:%d,
+                                FamilyNameLen:%d,
+                                FamilyName:%s,
+                                LeaderID:%d,
+                                LeaderNameLen:%d,
+                                LeaderName:%s,
+                                LeaderServerID:%d,
+                                FamilyLV:%d,
+                                ServerID:%d,
+                                EmblemID:%d,
+                                EmblemWord:%s,
+                                FightPower:%d,
+                                FightPowerEx:%d,
+                                BroadcastLen:%d,
+                                Broadcast:%s,
+                                MemberCount:%d,
+                                DataServerID:%d
+                                '''\
+                                %(
+                                self.Head.OutputString(),
+                                self.FamilyID,
+                                self.FamilyNameLen,
+                                self.FamilyName,
+                                self.LeaderID,
+                                self.LeaderNameLen,
+                                self.LeaderName,
+                                self.LeaderServerID,
+                                self.FamilyLV,
+                                self.ServerID,
+                                self.EmblemID,
+                                self.EmblemWord,
+                                self.FightPower,
+                                self.FightPowerEx,
+                                self.BroadcastLen,
+                                self.Broadcast,
+                                self.MemberCount,
+                                self.DataServerID
+                                )
+        return DumpString
+
+
+m_NAtagSCTagFamilyInfo=tagSCTagFamilyInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagSCTagFamilyInfo.Head.Cmd,m_NAtagSCTagFamilyInfo.Head.SubCmd))] = m_NAtagSCTagFamilyInfo
+
+
+#------------------------------------------------------
 # A6 05 VIP礼包购买记录 #tagMCVIPAwardMsg
 
 class  tagMCVIPAwardMsg(Structure):

--
Gitblit v1.8.0