From ff3e540bb725cccaff39d0582b53a2070ad47436 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 12 一月 2023 17:08:27 +0800
Subject: [PATCH] 9762 【BT8】【后端】藏宝阁(删除激活古宝技能字段)

---
 ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py |  265 +++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 248 insertions(+), 17 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index ddc5b16..c0c0ffb 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -15140,6 +15140,118 @@
 
 
 #------------------------------------------------------
+# C0 11 跨服妖魔boss玩家伤害信息 #tagGCCrossYaomoBossPlayerHurtInfo
+
+class  tagGCCrossYaomoBossPlayerHurtInfo(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ("HurtTotal", c_int),    # 总伤害值,小于亿部分
+                  ("HurtTotalEx", c_int),    # 总伤害值,整除亿部分
+                  ("AwardState", c_int),    # 伤害目标值领奖状态,按奖励记录索引位运算判断是否已领取
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xC0
+        self.SubCmd = 0x11
+        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 = 0xC0
+        self.SubCmd = 0x11
+        self.HurtTotal = 0
+        self.HurtTotalEx = 0
+        self.AwardState = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagGCCrossYaomoBossPlayerHurtInfo)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// C0 11 跨服妖魔boss玩家伤害信息 //tagGCCrossYaomoBossPlayerHurtInfo:
+                                Cmd:%s,
+                                SubCmd:%s,
+                                HurtTotal:%d,
+                                HurtTotalEx:%d,
+                                AwardState:%d
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd,
+                                self.HurtTotal,
+                                self.HurtTotalEx,
+                                self.AwardState
+                                )
+        return DumpString
+
+
+m_NAtagGCCrossYaomoBossPlayerHurtInfo=tagGCCrossYaomoBossPlayerHurtInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCCrossYaomoBossPlayerHurtInfo.Cmd,m_NAtagGCCrossYaomoBossPlayerHurtInfo.SubCmd))] = m_NAtagGCCrossYaomoBossPlayerHurtInfo
+
+
+#------------------------------------------------------
+# C0 10 跨服所属分区信息 #tagGCCrossZoneInfo
+
+class  tagGCCrossZoneInfo(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("Cmd", c_ubyte),
+                  ("SubCmd", c_ubyte),
+                  ("CommZoneID", c_ubyte),    # 所属常规分区ID
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        self.Cmd = 0xC0
+        self.SubCmd = 0x10
+        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 = 0xC0
+        self.SubCmd = 0x10
+        self.CommZoneID = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagGCCrossZoneInfo)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// C0 10 跨服所属分区信息 //tagGCCrossZoneInfo:
+                                Cmd:%s,
+                                SubCmd:%s,
+                                CommZoneID:%d
+                                '''\
+                                %(
+                                self.Cmd,
+                                self.SubCmd,
+                                self.CommZoneID
+                                )
+        return DumpString
+
+
+m_NAtagGCCrossZoneInfo=tagGCCrossZoneInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCCrossZoneInfo.Cmd,m_NAtagGCCrossZoneInfo.SubCmd))] = m_NAtagGCCrossZoneInfo
+
+
+#------------------------------------------------------
 # C0 14 幸运云购开奖记录 #tagGCLuckyCloudBuyLotteryRecInfo
 
 class  tagGCLuckyCloudBuyLotteryRec(Structure):
@@ -20630,6 +20742,118 @@
 
 m_NAtagMCGrabRedPacketCnt=tagMCGrabRedPacketCnt()
 ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCGrabRedPacketCnt.Cmd,m_NAtagMCGrabRedPacketCnt.SubCmd))] = m_NAtagMCGrabRedPacketCnt
+
+
+#------------------------------------------------------
+# A3 C7 古宝信息 #tagMCGubaoInfo
+
+class  tagMCGubao(Structure):
+    _pack_ = 1
+    _fields_ = [
+                  ("GubaoID", c_ushort),    
+                  ("GubaoStar", c_ubyte),    
+                  ("GubaoLV", c_ubyte),    
+                  ]
+
+    def __init__(self):
+        self.Clear()
+        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.GubaoID = 0
+        self.GubaoStar = 0
+        self.GubaoLV = 0
+        return
+
+    def GetLength(self):
+        return sizeof(tagMCGubao)
+
+    def GetBuffer(self):
+        return string_at(addressof(self), self.GetLength())
+
+    def OutputString(self):
+        DumpString = '''// A3 C7 古宝信息 //tagMCGubaoInfo:
+                                GubaoID:%d,
+                                GubaoStar:%d,
+                                GubaoLV:%d
+                                '''\
+                                %(
+                                self.GubaoID,
+                                self.GubaoStar,
+                                self.GubaoLV
+                                )
+        return DumpString
+
+
+class  tagMCGubaoInfo(Structure):
+    Head = tagHead()
+    Count = 0    #(BYTE Count)
+    GubaoInfoList = list()    #(vector<tagMCGubao> GubaoInfoList)
+    data = None
+
+    def __init__(self):
+        self.Clear()
+        self.Head.Cmd = 0xA3
+        self.Head.SubCmd = 0xC7
+        return
+
+    def ReadData(self, _lpData, _pos=0, _Len=0):
+        self.Clear()
+        _pos = self.Head.ReadData(_lpData, _pos)
+        self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        for i in range(self.Count):
+            temGubaoInfoList = tagMCGubao()
+            _pos = temGubaoInfoList.ReadData(_lpData, _pos)
+            self.GubaoInfoList.append(temGubaoInfoList)
+        return _pos
+
+    def Clear(self):
+        self.Head = tagHead()
+        self.Head.Clear()
+        self.Head.Cmd = 0xA3
+        self.Head.SubCmd = 0xC7
+        self.Count = 0
+        self.GubaoInfoList = list()
+        return
+
+    def GetLength(self):
+        length = 0
+        length += self.Head.GetLength()
+        length += 1
+        for i in range(self.Count):
+            length += self.GubaoInfoList[i].GetLength()
+
+        return length
+
+    def GetBuffer(self):
+        data = ''
+        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+        data = CommFunc.WriteBYTE(data, self.Count)
+        for i in range(self.Count):
+            data = CommFunc.WriteString(data, self.GubaoInfoList[i].GetLength(), self.GubaoInfoList[i].GetBuffer())
+        return data
+
+    def OutputString(self):
+        DumpString = '''
+                                Head:%s,
+                                Count:%d,
+                                GubaoInfoList:%s
+                                '''\
+                                %(
+                                self.Head.OutputString(),
+                                self.Count,
+                                "..."
+                                )
+        return DumpString
+
+
+m_NAtagMCGubaoInfo=tagMCGubaoInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCGubaoInfo.Head.Cmd,m_NAtagMCGubaoInfo.Head.SubCmd))] = m_NAtagMCGubaoInfo
 
 
 #------------------------------------------------------
@@ -29262,8 +29486,9 @@
 
 class  tagMCActGodGiftItemLib(Structure):
     ItemLibType = 0    #(BYTE ItemLibType)//物品库类型
-    ChooseItemCount = 0    #(BYTE ChooseItemCount)//可选择物品个数
-    ChooseItemList = list()    #(vector<tagMCActGodGiftItem> ChooseItemList)//可选物品列表
+    NeedChooseCount = 0    #(BYTE NeedChooseCount)//需要选择个数
+    GodGiftItemCount = 0    #(BYTE GodGiftItemCount)//可选择物品个数
+    GodGiftItemList = list()    #(vector<tagMCActGodGiftItem> GodGiftItemList)//可选物品列表
     data = None
 
     def __init__(self):
@@ -29273,45 +29498,51 @@
     def ReadData(self, _lpData, _pos=0, _Len=0):
         self.Clear()
         self.ItemLibType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
-        self.ChooseItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
-        for i in range(self.ChooseItemCount):
-            temChooseItemList = tagMCActGodGiftItem()
-            _pos = temChooseItemList.ReadData(_lpData, _pos)
-            self.ChooseItemList.append(temChooseItemList)
+        self.NeedChooseCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.GodGiftItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        for i in range(self.GodGiftItemCount):
+            temGodGiftItemList = tagMCActGodGiftItem()
+            _pos = temGodGiftItemList.ReadData(_lpData, _pos)
+            self.GodGiftItemList.append(temGodGiftItemList)
         return _pos
 
     def Clear(self):
         self.ItemLibType = 0
-        self.ChooseItemCount = 0
-        self.ChooseItemList = list()
+        self.NeedChooseCount = 0
+        self.GodGiftItemCount = 0
+        self.GodGiftItemList = list()
         return
 
     def GetLength(self):
         length = 0
         length += 1
         length += 1
-        for i in range(self.ChooseItemCount):
-            length += self.ChooseItemList[i].GetLength()
+        length += 1
+        for i in range(self.GodGiftItemCount):
+            length += self.GodGiftItemList[i].GetLength()
 
         return length
 
     def GetBuffer(self):
         data = ''
         data = CommFunc.WriteBYTE(data, self.ItemLibType)
-        data = CommFunc.WriteBYTE(data, self.ChooseItemCount)
-        for i in range(self.ChooseItemCount):
-            data = CommFunc.WriteString(data, self.ChooseItemList[i].GetLength(), self.ChooseItemList[i].GetBuffer())
+        data = CommFunc.WriteBYTE(data, self.NeedChooseCount)
+        data = CommFunc.WriteBYTE(data, self.GodGiftItemCount)
+        for i in range(self.GodGiftItemCount):
+            data = CommFunc.WriteString(data, self.GodGiftItemList[i].GetLength(), self.GodGiftItemList[i].GetBuffer())
         return data
 
     def OutputString(self):
         DumpString = '''
                                 ItemLibType:%d,
-                                ChooseItemCount:%d,
-                                ChooseItemList:%s
+                                NeedChooseCount:%d,
+                                GodGiftItemCount:%d,
+                                GodGiftItemList:%s
                                 '''\
                                 %(
                                 self.ItemLibType,
-                                self.ChooseItemCount,
+                                self.NeedChooseCount,
+                                self.GodGiftItemCount,
                                 "..."
                                 )
         return DumpString

--
Gitblit v1.8.0