From 7e17abc560ec66bc164e5e1f8deff42e96ca8af8 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 16 十一月 2022 16:26:28 +0800
Subject: [PATCH] 9750 【BT7】【越南】【主干】【服务端】服务器无人登录警告

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

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index ddc5b16..f7d12aa 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):
@@ -29262,8 +29374,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 +29386,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