From b7df31c585b6d3be25aa618c682996427ce7a40b Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 12 四月 2019 17:13:12 +0800
Subject: [PATCH] 6459 【后端】【2.0】缥缈仙域开发单(增加自定义副本相关封包)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py     |  160 ++++++++++++++
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py |  149 +++++++++++++
 ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py                          |  160 ++++++++++++++
 ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py                      |  149 +++++++++++++
 4 files changed, 618 insertions(+), 0 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index c1f129a..e4a4ae7 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -3999,6 +3999,54 @@
 
 
 #------------------------------------------------------
+# A2 33 前端退出自定义场景 #tagCMClientExitCustomScene
+
+class  tagCMClientExitCustomScene(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xA2
+        self.SubCmd = 0x33
+        return
+
+    def ReadData(self, stringData, _pos=0, _len=0):
+        self.Clear()
+        memmove(addressof(self), stringData[_pos:], self.GetLength())
+        return _pos + self.GetLength()
+
+    def Clear(self):
+        self.Cmd = 0xA2
+        self.SubCmd = 0x33
+        return
+
+    def GetLength(self):
+        return sizeof(tagCMClientExitCustomScene)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// A2 33 前端退出自定义场景 //tagCMClientExitCustomScene:
+                                Cmd:%s,
+                                SubCmd:%s
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd
+                                )
+        return DumpString
+
+
+m_NAtagCMClientExitCustomScene=tagCMClientExitCustomScene()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMClientExitCustomScene.Cmd,m_NAtagCMClientExitCustomScene.SubCmd))] = m_NAtagCMClientExitCustomScene
+
+
+#------------------------------------------------------
 # A2 31 前端开始自定义场景 #tagCMClientStartCustomScene
 
 class  tagCMClientStartCustomScene(Structure):
@@ -13435,6 +13483,62 @@
 
 
 #------------------------------------------------------
+# B1 09 结算自定义副本奖励 #tagCMGiveCustomFBPrize
+
+class  tagCMGiveCustomFBPrize(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ("MapID", c_int),    
+                  ("FuncLineID", c_ushort),    
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xB1
+        self.SubCmd = 0x09
+        return
+
+    def ReadData(self, stringData, _pos=0, _len=0):
+        self.Clear()
+        memmove(addressof(self), stringData[_pos:], self.GetLength())
+        return _pos + self.GetLength()
+
+    def Clear(self):
+        self.Cmd = 0xB1
+        self.SubCmd = 0x09
+        self.MapID = 0
+        self.FuncLineID = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagCMGiveCustomFBPrize)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// B1 09 结算自定义副本奖励 //tagCMGiveCustomFBPrize:
+                                Cmd:%s,
+                                SubCmd:%s,
+                                MapID:%d,
+                                FuncLineID:%d
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd,
+                                self.MapID,
+                                self.FuncLineID
+                                )
+        return DumpString
+
+
+m_NAtagCMGiveCustomFBPrize=tagCMGiveCustomFBPrize()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGiveCustomFBPrize.Cmd,m_NAtagCMGiveCustomFBPrize.SubCmd))] = m_NAtagCMGiveCustomFBPrize
+
+
+#------------------------------------------------------
 # B1 06 助战召唤 #tagCMHelpBattleCall
 
 class  tagCMHelpBattleCall(Structure):
@@ -13651,6 +13755,62 @@
 
 
 #------------------------------------------------------
+# B1 08 刷新自定义副本奖励 #tagCMRefreshCustomFBPrize
+
+class  tagCMRefreshCustomFBPrize(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ("MapID", c_int),    
+                  ("FuncLineID", c_ushort),    
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xB1
+        self.SubCmd = 0x08
+        return
+
+    def ReadData(self, stringData, _pos=0, _len=0):
+        self.Clear()
+        memmove(addressof(self), stringData[_pos:], self.GetLength())
+        return _pos + self.GetLength()
+
+    def Clear(self):
+        self.Cmd = 0xB1
+        self.SubCmd = 0x08
+        self.MapID = 0
+        self.FuncLineID = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagCMRefreshCustomFBPrize)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// B1 08 刷新自定义副本奖励 //tagCMRefreshCustomFBPrize:
+                                Cmd:%s,
+                                SubCmd:%s,
+                                MapID:%d,
+                                FuncLineID:%d
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd,
+                                self.MapID,
+                                self.FuncLineID
+                                )
+        return DumpString
+
+
+m_NAtagCMRefreshCustomFBPrize=tagCMRefreshCustomFBPrize()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRefreshCustomFBPrize.Cmd,m_NAtagCMRefreshCustomFBPrize.SubCmd))] = m_NAtagCMRefreshCustomFBPrize
+
+
+#------------------------------------------------------
 # B1 03 设置封魔坛多倍击杀 #tagCMSetFMTDouble
 
 class  tagCMSetFMTDouble(Structure):
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 27ae39f..8f93338 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -27745,6 +27745,155 @@
 
 
 #------------------------------------------------------
+# B2 14 自定义副本奖励信息 #tagMCCuntomFBPrizeInfo
+
+class  tagMCCuntomFBPrizeItem(Structure):
+    ItemID = 0    #(DWORD ItemID)
+    Count = 0    #(WORD Count)
+    IsAuctionItem = 0    #(BYTE IsAuctionItem)//是否拍品
+    UserDataLen = 0    #(WORD UserDataLen)//附加属性长度
+    UserData = ""    #(String UserData)//附加属性  size = UserDataLen
+    data = None
+
+    def __init__(self):
+        self.Clear()
+        return
+
+    def ReadData(self, _lpData, _pos=0, _Len=0):
+        self.Clear()
+        self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.Count,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.IsAuctionItem,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen)
+        return _pos
+
+    def Clear(self):
+        self.ItemID = 0
+        self.Count = 0
+        self.IsAuctionItem = 0
+        self.UserDataLen = 0
+        self.UserData = ""
+        return
+
+    def GetLength(self):
+        length = 0
+        length += 4
+        length += 2
+        length += 1
+        length += 2
+        length += len(self.UserData)
+
+        return length
+
+    def GetBuffer(self):
+        data = ''
+        data = CommFunc.WriteDWORD(data, self.ItemID)
+        data = CommFunc.WriteWORD(data, self.Count)
+        data = CommFunc.WriteBYTE(data, self.IsAuctionItem)
+        data = CommFunc.WriteWORD(data, self.UserDataLen)
+        data = CommFunc.WriteString(data, self.UserDataLen, self.UserData)
+        return data
+
+    def OutputString(self):
+        DumpString = '''
+                                ItemID:%d,
+                                Count:%d,
+                                IsAuctionItem:%d,
+                                UserDataLen:%d,
+                                UserData:%s
+                                '''\
+                                %(
+                                self.ItemID,
+                                self.Count,
+                                self.IsAuctionItem,
+                                self.UserDataLen,
+                                self.UserData
+                                )
+        return DumpString
+
+
+class  tagMCCuntomFBPrizeInfo(Structure):
+    Head = tagHead()
+    MapID = 0    #(DWORD MapID)
+    FuncLineID = 0    #(WORD FuncLineID)
+    PrizeItemCount = 0    #(BYTE PrizeItemCount)
+    PrizeItemList = list()    #(vector<tagMCCuntomFBPrizeItem> PrizeItemList)
+    data = None
+
+    def __init__(self):
+        self.Clear()
+        self.Head.Cmd = 0xB2
+        self.Head.SubCmd = 0x14
+        return
+
+    def ReadData(self, _lpData, _pos=0, _Len=0):
+        self.Clear()
+        _pos = self.Head.ReadData(_lpData, _pos)
+        self.MapID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FuncLineID,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.PrizeItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        for i in range(self.PrizeItemCount):
+            temPrizeItemList = tagMCCuntomFBPrizeItem()
+            _pos = temPrizeItemList.ReadData(_lpData, _pos)
+            self.PrizeItemList.append(temPrizeItemList)
+        return _pos
+
+    def Clear(self):
+        self.Head = tagHead()
+        self.Head.Clear()
+        self.Head.Cmd = 0xB2
+        self.Head.SubCmd = 0x14
+        self.MapID = 0
+        self.FuncLineID = 0
+        self.PrizeItemCount = 0
+        self.PrizeItemList = list()
+        return
+
+    def GetLength(self):
+        length = 0
+        length += self.Head.GetLength()
+        length += 4
+        length += 2
+        length += 1
+        for i in range(self.PrizeItemCount):
+            length += self.PrizeItemList[i].GetLength()
+
+        return length
+
+    def GetBuffer(self):
+        data = ''
+        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+        data = CommFunc.WriteDWORD(data, self.MapID)
+        data = CommFunc.WriteWORD(data, self.FuncLineID)
+        data = CommFunc.WriteBYTE(data, self.PrizeItemCount)
+        for i in range(self.PrizeItemCount):
+            data = CommFunc.WriteString(data, self.PrizeItemList[i].GetLength(), self.PrizeItemList[i].GetBuffer())
+        return data
+
+    def OutputString(self):
+        DumpString = '''
+                                Head:%s,
+                                MapID:%d,
+                                FuncLineID:%d,
+                                PrizeItemCount:%d,
+                                PrizeItemList:%s
+                                '''\
+                                %(
+                                self.Head.OutputString(),
+                                self.MapID,
+                                self.FuncLineID,
+                                self.PrizeItemCount,
+                                "..."
+                                )
+        return DumpString
+
+
+m_NAtagMCCuntomFBPrizeInfo=tagMCCuntomFBPrizeInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCCuntomFBPrizeInfo.Head.Cmd,m_NAtagMCCuntomFBPrizeInfo.Head.SubCmd))] = m_NAtagMCCuntomFBPrizeInfo
+
+
+#------------------------------------------------------
 # B2 10 仙盟联赛玩家排名信息 #tagMCFamilyWarBillboard
 
 class  tagMCFamilyWarPlayer(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index c1f129a..e4a4ae7 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -3999,6 +3999,54 @@
 
 
 #------------------------------------------------------
+# A2 33 前端退出自定义场景 #tagCMClientExitCustomScene
+
+class  tagCMClientExitCustomScene(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xA2
+        self.SubCmd = 0x33
+        return
+
+    def ReadData(self, stringData, _pos=0, _len=0):
+        self.Clear()
+        memmove(addressof(self), stringData[_pos:], self.GetLength())
+        return _pos + self.GetLength()
+
+    def Clear(self):
+        self.Cmd = 0xA2
+        self.SubCmd = 0x33
+        return
+
+    def GetLength(self):
+        return sizeof(tagCMClientExitCustomScene)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// A2 33 前端退出自定义场景 //tagCMClientExitCustomScene:
+                                Cmd:%s,
+                                SubCmd:%s
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd
+                                )
+        return DumpString
+
+
+m_NAtagCMClientExitCustomScene=tagCMClientExitCustomScene()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMClientExitCustomScene.Cmd,m_NAtagCMClientExitCustomScene.SubCmd))] = m_NAtagCMClientExitCustomScene
+
+
+#------------------------------------------------------
 # A2 31 前端开始自定义场景 #tagCMClientStartCustomScene
 
 class  tagCMClientStartCustomScene(Structure):
@@ -13435,6 +13483,62 @@
 
 
 #------------------------------------------------------
+# B1 09 结算自定义副本奖励 #tagCMGiveCustomFBPrize
+
+class  tagCMGiveCustomFBPrize(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ("MapID", c_int),    
+                  ("FuncLineID", c_ushort),    
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xB1
+        self.SubCmd = 0x09
+        return
+
+    def ReadData(self, stringData, _pos=0, _len=0):
+        self.Clear()
+        memmove(addressof(self), stringData[_pos:], self.GetLength())
+        return _pos + self.GetLength()
+
+    def Clear(self):
+        self.Cmd = 0xB1
+        self.SubCmd = 0x09
+        self.MapID = 0
+        self.FuncLineID = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagCMGiveCustomFBPrize)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// B1 09 结算自定义副本奖励 //tagCMGiveCustomFBPrize:
+                                Cmd:%s,
+                                SubCmd:%s,
+                                MapID:%d,
+                                FuncLineID:%d
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd,
+                                self.MapID,
+                                self.FuncLineID
+                                )
+        return DumpString
+
+
+m_NAtagCMGiveCustomFBPrize=tagCMGiveCustomFBPrize()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGiveCustomFBPrize.Cmd,m_NAtagCMGiveCustomFBPrize.SubCmd))] = m_NAtagCMGiveCustomFBPrize
+
+
+#------------------------------------------------------
 # B1 06 助战召唤 #tagCMHelpBattleCall
 
 class  tagCMHelpBattleCall(Structure):
@@ -13651,6 +13755,62 @@
 
 
 #------------------------------------------------------
+# B1 08 刷新自定义副本奖励 #tagCMRefreshCustomFBPrize
+
+class  tagCMRefreshCustomFBPrize(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ("MapID", c_int),    
+                  ("FuncLineID", c_ushort),    
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xB1
+        self.SubCmd = 0x08
+        return
+
+    def ReadData(self, stringData, _pos=0, _len=0):
+        self.Clear()
+        memmove(addressof(self), stringData[_pos:], self.GetLength())
+        return _pos + self.GetLength()
+
+    def Clear(self):
+        self.Cmd = 0xB1
+        self.SubCmd = 0x08
+        self.MapID = 0
+        self.FuncLineID = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagCMRefreshCustomFBPrize)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// B1 08 刷新自定义副本奖励 //tagCMRefreshCustomFBPrize:
+                                Cmd:%s,
+                                SubCmd:%s,
+                                MapID:%d,
+                                FuncLineID:%d
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd,
+                                self.MapID,
+                                self.FuncLineID
+                                )
+        return DumpString
+
+
+m_NAtagCMRefreshCustomFBPrize=tagCMRefreshCustomFBPrize()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRefreshCustomFBPrize.Cmd,m_NAtagCMRefreshCustomFBPrize.SubCmd))] = m_NAtagCMRefreshCustomFBPrize
+
+
+#------------------------------------------------------
 # B1 03 设置封魔坛多倍击杀 #tagCMSetFMTDouble
 
 class  tagCMSetFMTDouble(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 27ae39f..8f93338 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -27745,6 +27745,155 @@
 
 
 #------------------------------------------------------
+# B2 14 自定义副本奖励信息 #tagMCCuntomFBPrizeInfo
+
+class  tagMCCuntomFBPrizeItem(Structure):
+    ItemID = 0    #(DWORD ItemID)
+    Count = 0    #(WORD Count)
+    IsAuctionItem = 0    #(BYTE IsAuctionItem)//是否拍品
+    UserDataLen = 0    #(WORD UserDataLen)//附加属性长度
+    UserData = ""    #(String UserData)//附加属性  size = UserDataLen
+    data = None
+
+    def __init__(self):
+        self.Clear()
+        return
+
+    def ReadData(self, _lpData, _pos=0, _Len=0):
+        self.Clear()
+        self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.Count,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.IsAuctionItem,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen)
+        return _pos
+
+    def Clear(self):
+        self.ItemID = 0
+        self.Count = 0
+        self.IsAuctionItem = 0
+        self.UserDataLen = 0
+        self.UserData = ""
+        return
+
+    def GetLength(self):
+        length = 0
+        length += 4
+        length += 2
+        length += 1
+        length += 2
+        length += len(self.UserData)
+
+        return length
+
+    def GetBuffer(self):
+        data = ''
+        data = CommFunc.WriteDWORD(data, self.ItemID)
+        data = CommFunc.WriteWORD(data, self.Count)
+        data = CommFunc.WriteBYTE(data, self.IsAuctionItem)
+        data = CommFunc.WriteWORD(data, self.UserDataLen)
+        data = CommFunc.WriteString(data, self.UserDataLen, self.UserData)
+        return data
+
+    def OutputString(self):
+        DumpString = '''
+                                ItemID:%d,
+                                Count:%d,
+                                IsAuctionItem:%d,
+                                UserDataLen:%d,
+                                UserData:%s
+                                '''\
+                                %(
+                                self.ItemID,
+                                self.Count,
+                                self.IsAuctionItem,
+                                self.UserDataLen,
+                                self.UserData
+                                )
+        return DumpString
+
+
+class  tagMCCuntomFBPrizeInfo(Structure):
+    Head = tagHead()
+    MapID = 0    #(DWORD MapID)
+    FuncLineID = 0    #(WORD FuncLineID)
+    PrizeItemCount = 0    #(BYTE PrizeItemCount)
+    PrizeItemList = list()    #(vector<tagMCCuntomFBPrizeItem> PrizeItemList)
+    data = None
+
+    def __init__(self):
+        self.Clear()
+        self.Head.Cmd = 0xB2
+        self.Head.SubCmd = 0x14
+        return
+
+    def ReadData(self, _lpData, _pos=0, _Len=0):
+        self.Clear()
+        _pos = self.Head.ReadData(_lpData, _pos)
+        self.MapID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+        self.FuncLineID,_pos = CommFunc.ReadWORD(_lpData, _pos)
+        self.PrizeItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        for i in range(self.PrizeItemCount):
+            temPrizeItemList = tagMCCuntomFBPrizeItem()
+            _pos = temPrizeItemList.ReadData(_lpData, _pos)
+            self.PrizeItemList.append(temPrizeItemList)
+        return _pos
+
+    def Clear(self):
+        self.Head = tagHead()
+        self.Head.Clear()
+        self.Head.Cmd = 0xB2
+        self.Head.SubCmd = 0x14
+        self.MapID = 0
+        self.FuncLineID = 0
+        self.PrizeItemCount = 0
+        self.PrizeItemList = list()
+        return
+
+    def GetLength(self):
+        length = 0
+        length += self.Head.GetLength()
+        length += 4
+        length += 2
+        length += 1
+        for i in range(self.PrizeItemCount):
+            length += self.PrizeItemList[i].GetLength()
+
+        return length
+
+    def GetBuffer(self):
+        data = ''
+        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+        data = CommFunc.WriteDWORD(data, self.MapID)
+        data = CommFunc.WriteWORD(data, self.FuncLineID)
+        data = CommFunc.WriteBYTE(data, self.PrizeItemCount)
+        for i in range(self.PrizeItemCount):
+            data = CommFunc.WriteString(data, self.PrizeItemList[i].GetLength(), self.PrizeItemList[i].GetBuffer())
+        return data
+
+    def OutputString(self):
+        DumpString = '''
+                                Head:%s,
+                                MapID:%d,
+                                FuncLineID:%d,
+                                PrizeItemCount:%d,
+                                PrizeItemList:%s
+                                '''\
+                                %(
+                                self.Head.OutputString(),
+                                self.MapID,
+                                self.FuncLineID,
+                                self.PrizeItemCount,
+                                "..."
+                                )
+        return DumpString
+
+
+m_NAtagMCCuntomFBPrizeInfo=tagMCCuntomFBPrizeInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCCuntomFBPrizeInfo.Head.Cmd,m_NAtagMCCuntomFBPrizeInfo.Head.SubCmd))] = m_NAtagMCCuntomFBPrizeInfo
+
+
+#------------------------------------------------------
 # B2 10 仙盟联赛玩家排名信息 #tagMCFamilyWarBillboard
 
 class  tagMCFamilyWarPlayer(Structure):

--
Gitblit v1.8.0