From 48fe7ceb396576b1d87745c426921586b9eb721d Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 22 十月 2025 14:49:48 +0800
Subject: [PATCH] 16 卡牌服务端(删除分包下载奖励)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/Protocol/MergeServerRecvProtocol.py |   26 +++++++++++++++++++++++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/Protocol/MergeServerRecvProtocol.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/Protocol/MergeServerRecvProtocol.py
index 61aca15..84fb465 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/Protocol/MergeServerRecvProtocol.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/PyMongoDB/Protocol/MergeServerRecvProtocol.py
@@ -344,10 +344,14 @@
         return DumpString
     
     
-#向跨服服务器发送自定义封包#tagLPStringData
+#------------------------------------------------------
+#服务器与服务器间的自定义跨服封包#tagLPStringData
 
 class  tagLPStringData(Structure):
     Type = 0    #(BYTE Type)//类型
+    DirType = 0    #(BYTE DirType)//0全广播,1通知主服务器排除合服子服,2通知服务器包含合服子服, 3通知跨服服务器 
+    ServerLen = 0    #(DWORD ServerLen)
+    ServerList = ""    #(String ServerList)//服务器列表格式可以是 [(1,10),13,16,(22,30)]
     DataLen = 0    #(DWORD DataLen)
     Data = ""    #(String Data)//自定义消息
     data = None
@@ -359,12 +363,18 @@
     def ReadData(self, _lpData, _pos=0, _Len=0):
         self.Clear()
         self.Type,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.DirType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.ServerLen,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.ServerList,_pos = CommFunc.ReadString(_lpData, _pos,self.ServerLen)
         self.DataLen,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.Data,_pos = CommFunc.ReadString(_lpData, _pos,self.DataLen)
         return _pos
 
     def Clear(self):
         self.Type = 0
+        self.DirType = 0
+        self.ServerLen = 0
+        self.ServerList = ""
         self.DataLen = 0
         self.Data = ""
         return
@@ -372,6 +382,9 @@
     def GetLength(self):
         length = 0
         length += 1
+        length += 1
+        length += 4
+        length += len(self.ServerList)
         length += 4
         length += len(self.Data)
 
@@ -380,6 +393,9 @@
     def GetBuffer(self):
         data = ''
         data = CommFunc.WriteBYTE(data, self.Type)
+        data = CommFunc.WriteBYTE(data, self.DirType)
+        data = CommFunc.WriteDWORD(data, self.ServerLen)
+        data = CommFunc.WriteString(data, self.ServerLen, self.ServerList)
         data = CommFunc.WriteDWORD(data, self.DataLen)
         data = CommFunc.WriteString(data, self.DataLen, self.Data)
         return data
@@ -387,17 +403,21 @@
     def OutputString(self):
         DumpString = '''
                                 Type:%d,
+                                DirType:%d,
+                                ServerLen:%d,
+                                ServerList:%s,
                                 DataLen:%d,
                                 Data:%s
                                 '''\
                                 %(
                                 self.Type,
+                                self.DirType,
+                                self.ServerLen,
+                                self.ServerList,
                                 self.DataLen,
                                 self.Data
                                 )
         return DumpString
-
-
 
 #------------------------------------------------------
 #汇报玩家数据 #tagLPPlayerData

--
Gitblit v1.8.0