From a1ea5474ffd2b081668f9a0cef8d069aa78db85d Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 12 十二月 2025 20:53:42 +0800
Subject: [PATCH] 389 流向记录(战斗服务器不记录流向)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 770 ++++++++++++++++++++++++----------------------------------
1 files changed, 322 insertions(+), 448 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index c67123e..df6e0dc 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -8961,62 +8961,6 @@
#------------------------------------------------------
-# A9 01 获取Boss首杀奖励 #tagCGGetBossFirstKillAward
-
-class tagCGGetBossFirstKillAward(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("NPCID", c_int),
- ("AwardType", c_ubyte), # 0-首杀红包奖励;1-个人首杀奖励
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA9
- self.SubCmd = 0x01
- 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 = 0xA9
- self.SubCmd = 0x01
- self.NPCID = 0
- self.AwardType = 0
- return
-
- def GetLength(self):
- return sizeof(tagCGGetBossFirstKillAward)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A9 01 获取Boss首杀奖励 //tagCGGetBossFirstKillAward:
- Cmd:%s,
- SubCmd:%s,
- NPCID:%d,
- AwardType:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.NPCID,
- self.AwardType
- )
- return DumpString
-
-
-m_NAtagCGGetBossFirstKillAward=tagCGGetBossFirstKillAward()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGGetBossFirstKillAward.Cmd,m_NAtagCGGetBossFirstKillAward.SubCmd))] = m_NAtagCGGetBossFirstKillAward
-
-
-#------------------------------------------------------
# A9 07 点赞仙宫 #tagCGLikeXiangong
class tagCGLikeXiangong(Structure):
@@ -10601,115 +10545,6 @@
#------------------------------------------------------
-# B0 13 取消协助Boss #tagCGCancelAssistBoss
-
-class tagCGCancelAssistBoss(Structure):
- Head = tagHead()
- AssistGUID = "" #(char AssistGUID[40])//协助GUID
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xB0
- self.Head.SubCmd = 0x13
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.AssistGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xB0
- self.Head.SubCmd = 0x13
- self.AssistGUID = ""
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 40
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteString(data, 40, self.AssistGUID)
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- AssistGUID:%s
- '''\
- %(
- self.Head.OutputString(),
- self.AssistGUID
- )
- return DumpString
-
-
-m_NAtagCGCancelAssistBoss=tagCGCancelAssistBoss()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGCancelAssistBoss.Head.Cmd,m_NAtagCGCancelAssistBoss.Head.SubCmd))] = m_NAtagCGCancelAssistBoss
-
-
-#------------------------------------------------------
-# B0 15 接收协助感谢礼物 #tagCGGetAssistThanksGift
-
-class tagCGGetAssistThanksGift(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("IsPreview", c_ubyte), #是否预览,非预览即确认领取,无额外奖励确认时也需要回复领取包代表已读
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB0
- self.SubCmd = 0x15
- 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 = 0xB0
- self.SubCmd = 0x15
- self.IsPreview = 0
- return
-
- def GetLength(self):
- return sizeof(tagCGGetAssistThanksGift)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B0 15 接收协助感谢礼物 //tagCGGetAssistThanksGift:
- Cmd:%s,
- SubCmd:%s,
- IsPreview:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.IsPreview
- )
- return DumpString
-
-
-m_NAtagCGGetAssistThanksGift=tagCGGetAssistThanksGift()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGGetAssistThanksGift.Cmd,m_NAtagCGGetAssistThanksGift.SubCmd))] = m_NAtagCGGetAssistThanksGift
-
-
-#------------------------------------------------------
# B0 39 自动淘金免费使用 #tagCSGoldRushAutoFreeUse
class tagCSGoldRushAutoFreeUse(Structure):
@@ -10930,19 +10765,21 @@
#------------------------------------------------------
-#B0 26 请求家族悬赏奖励领取情况 #tagQueryFamilyArrestAwardReceiveState
+# B0 40 游历点击 #tagCSTravelClick
-class tagQueryFamilyArrestAwardReceiveState(Structure):
+class tagCSTravelClick(Structure):
_pack_ = 1
_fields_ = [
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
+ ("Row", c_ubyte), #行,从1开始
+ ("Col", c_ubyte), #列,从1开始
]
def __init__(self):
self.Clear()
self.Cmd = 0xB0
- self.SubCmd = 0x26
+ self.SubCmd = 0x40
return
def ReadData(self, stringData, _pos=0, _len=0):
@@ -10952,17 +10789,71 @@
def Clear(self):
self.Cmd = 0xB0
- self.SubCmd = 0x26
+ self.SubCmd = 0x40
+ self.Row = 0
+ self.Col = 0
return
def GetLength(self):
- return sizeof(tagQueryFamilyArrestAwardReceiveState)
+ return sizeof(tagCSTravelClick)
def GetBuffer(self):
return string_at(addressof(self), self.GetLength())
def OutputString(self):
- DumpString = '''//B0 26 请求家族悬赏奖励领取情况 //tagQueryFamilyArrestAwardReceiveState:
+ DumpString = '''// B0 40 游历点击 //tagCSTravelClick:
+ Cmd:%s,
+ SubCmd:%s,
+ Row:%d,
+ Col:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.Row,
+ self.Col
+ )
+ return DumpString
+
+
+m_NAtagCSTravelClick=tagCSTravelClick()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSTravelClick.Cmd,m_NAtagCSTravelClick.SubCmd))] = m_NAtagCSTravelClick
+
+
+#------------------------------------------------------
+# B0 41 游历景观升级 #tagCSTravelSceneryUP
+
+class tagCSTravelSceneryUP(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xB0
+ self.SubCmd = 0x41
+ 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 = 0xB0
+ self.SubCmd = 0x41
+ return
+
+ def GetLength(self):
+ return sizeof(tagCSTravelSceneryUP)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// B0 41 游历景观升级 //tagCSTravelSceneryUP:
Cmd:%s,
SubCmd:%s
'''\
@@ -10973,221 +10864,8 @@
return DumpString
-m_NAtagQueryFamilyArrestAwardReceiveState=tagQueryFamilyArrestAwardReceiveState()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagQueryFamilyArrestAwardReceiveState.Cmd,m_NAtagQueryFamilyArrestAwardReceiveState.SubCmd))] = m_NAtagQueryFamilyArrestAwardReceiveState
-
-
-#------------------------------------------------------
-#B0 25 请求家族悬赏任务完成情况 #tagQueryFamilyArrestOverState
-
-class tagQueryFamilyArrestOverState(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB0
- self.SubCmd = 0x25
- 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 = 0xB0
- self.SubCmd = 0x25
- return
-
- def GetLength(self):
- return sizeof(tagQueryFamilyArrestOverState)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//B0 25 请求家族悬赏任务完成情况 //tagQueryFamilyArrestOverState:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagQueryFamilyArrestOverState=tagQueryFamilyArrestOverState()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagQueryFamilyArrestOverState.Cmd,m_NAtagQueryFamilyArrestOverState.SubCmd))] = m_NAtagQueryFamilyArrestOverState
-
-
-#------------------------------------------------------
-#B0 24 领取家族悬赏奖励 #tagReceiveFamilyArrestAward
-
-class tagReceiveFamilyArrestAward(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("ArrestID", c_int), #悬赏任务ID
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB0
- self.SubCmd = 0x24
- 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 = 0xB0
- self.SubCmd = 0x24
- self.ArrestID = 0
- return
-
- def GetLength(self):
- return sizeof(tagReceiveFamilyArrestAward)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//B0 24 领取家族悬赏奖励 //tagReceiveFamilyArrestAward:
- Cmd:%s,
- SubCmd:%s,
- ArrestID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.ArrestID
- )
- return DumpString
-
-
-m_NAtagReceiveFamilyArrestAward=tagReceiveFamilyArrestAward()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagReceiveFamilyArrestAward.Cmd,m_NAtagReceiveFamilyArrestAward.SubCmd))] = m_NAtagReceiveFamilyArrestAward
-
-
-#------------------------------------------------------
-# B0 12 开始协助Boss #tagCGStartAssistBoss
-
-class tagCGStartAssistBoss(Structure):
- Head = tagHead()
- AssistGUID = "" #(char AssistGUID[40])//协助GUID
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xB0
- self.Head.SubCmd = 0x12
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.AssistGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xB0
- self.Head.SubCmd = 0x12
- self.AssistGUID = ""
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 40
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteString(data, 40, self.AssistGUID)
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- AssistGUID:%s
- '''\
- %(
- self.Head.OutputString(),
- self.AssistGUID
- )
- return DumpString
-
-
-m_NAtagCGStartAssistBoss=tagCGStartAssistBoss()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGStartAssistBoss.Head.Cmd,m_NAtagCGStartAssistBoss.Head.SubCmd))] = m_NAtagCGStartAssistBoss
-
-
-#------------------------------------------------------
-# B0 14 使用协助感谢礼盒 #tagCGUseAssistThanksGift
-
-class tagCGUseAssistThanksGift(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("ItemID", c_int),
- ("IsPreview", c_ubyte), #是否预览,非预览即确认使用
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB0
- self.SubCmd = 0x14
- 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 = 0xB0
- self.SubCmd = 0x14
- self.ItemID = 0
- self.IsPreview = 0
- return
-
- def GetLength(self):
- return sizeof(tagCGUseAssistThanksGift)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B0 14 使用协助感谢礼盒 //tagCGUseAssistThanksGift:
- Cmd:%s,
- SubCmd:%s,
- ItemID:%d,
- IsPreview:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.ItemID,
- self.IsPreview
- )
- return DumpString
-
-
-m_NAtagCGUseAssistThanksGift=tagCGUseAssistThanksGift()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGUseAssistThanksGift.Cmd,m_NAtagCGUseAssistThanksGift.SubCmd))] = m_NAtagCGUseAssistThanksGift
+m_NAtagCSTravelSceneryUP=tagCSTravelSceneryUP()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSTravelSceneryUP.Cmd,m_NAtagCSTravelSceneryUP.SubCmd))] = m_NAtagCSTravelSceneryUP
#------------------------------------------------------
@@ -11260,66 +10938,6 @@
m_NAtagCMWorldTransfer=tagCMWorldTransfer()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMWorldTransfer.Cmd,m_NAtagCMWorldTransfer.SubCmd))] = m_NAtagCMWorldTransfer
-
-
-#------------------------------------------------------
-# B0 20 请求膜拜玩家 #tagCGWorship
-
-class tagCGWorship(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("PlayerID", c_int), # 目标玩家ID
- ("WorshipType", c_ubyte), # 膜拜类型
- ("WorshipValue", c_int), # 膜拜类型对应的功能值,如名次或其他,由具体膜拜类型定义对应值含义
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB0
- self.SubCmd = 0x20
- 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 = 0xB0
- self.SubCmd = 0x20
- self.PlayerID = 0
- self.WorshipType = 0
- self.WorshipValue = 0
- return
-
- def GetLength(self):
- return sizeof(tagCGWorship)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B0 20 请求膜拜玩家 //tagCGWorship:
- Cmd:%s,
- SubCmd:%s,
- PlayerID:%d,
- WorshipType:%d,
- WorshipValue:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.PlayerID,
- self.WorshipType,
- self.WorshipValue
- )
- return DumpString
-
-
-m_NAtagCGWorship=tagCGWorship()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGWorship.Cmd,m_NAtagCGWorship.SubCmd))] = m_NAtagCGWorship
#------------------------------------------------------
@@ -11572,6 +11190,178 @@
m_NAtagCSArenaMatch=tagCSArenaMatch()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSArenaMatch.Cmd,m_NAtagCSArenaMatch.SubCmd))] = m_NAtagCSArenaMatch
+
+
+#------------------------------------------------------
+# B2 19 红颜激活 #tagCSBeautyActivate
+
+class tagCSBeautyActivate(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("BeautyID", c_ushort), #红颜ID
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xB2
+ self.SubCmd = 0x19
+ 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 = 0xB2
+ self.SubCmd = 0x19
+ self.BeautyID = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCSBeautyActivate)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// B2 19 红颜激活 //tagCSBeautyActivate:
+ Cmd:%s,
+ SubCmd:%s,
+ BeautyID:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.BeautyID
+ )
+ return DumpString
+
+
+m_NAtagCSBeautyActivate=tagCSBeautyActivate()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSBeautyActivate.Cmd,m_NAtagCSBeautyActivate.SubCmd))] = m_NAtagCSBeautyActivate
+
+
+#------------------------------------------------------
+# B2 20 红颜好感度升级 #tagCSBeautyLVUP
+
+class tagCSBeautyLVUP(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("BeautyID", c_ushort), #红颜ID
+ ("ItemID", c_int), #使用物品ID
+ ("IsQuick", c_ubyte), # 是否快速升级,0-只消耗1个道具;1-消耗升1级的道具
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xB2
+ self.SubCmd = 0x20
+ 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 = 0xB2
+ self.SubCmd = 0x20
+ self.BeautyID = 0
+ self.ItemID = 0
+ self.IsQuick = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCSBeautyLVUP)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// B2 20 红颜好感度升级 //tagCSBeautyLVUP:
+ Cmd:%s,
+ SubCmd:%s,
+ BeautyID:%d,
+ ItemID:%d,
+ IsQuick:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.BeautyID,
+ self.ItemID,
+ self.IsQuick
+ )
+ return DumpString
+
+
+m_NAtagCSBeautyLVUP=tagCSBeautyLVUP()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSBeautyLVUP.Cmd,m_NAtagCSBeautyLVUP.SubCmd))] = m_NAtagCSBeautyLVUP
+
+
+#------------------------------------------------------
+# B2 21 红颜时装操作 #tagCSBeautySkinOP
+
+class tagCSBeautySkinOP(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("BeautyID", c_ushort), #红颜ID
+ ("SkinID", c_ushort), #时装ID
+ ("OPType", c_ubyte), #操作 1-激活;2-佩戴;3-升星
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xB2
+ self.SubCmd = 0x21
+ 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 = 0xB2
+ self.SubCmd = 0x21
+ self.BeautyID = 0
+ self.SkinID = 0
+ self.OPType = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagCSBeautySkinOP)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// B2 21 红颜时装操作 //tagCSBeautySkinOP:
+ Cmd:%s,
+ SubCmd:%s,
+ BeautyID:%d,
+ SkinID:%d,
+ OPType:%d
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd,
+ self.BeautyID,
+ self.SkinID,
+ self.OPType
+ )
+ return DumpString
+
+
+m_NAtagCSBeautySkinOP=tagCSBeautySkinOP()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSBeautySkinOP.Cmd,m_NAtagCSBeautySkinOP.SubCmd))] = m_NAtagCSBeautySkinOP
#------------------------------------------------------
@@ -12067,6 +11857,87 @@
m_NAtagCSHeroDismiss=tagCSHeroDismiss()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSHeroDismiss.Head.Cmd,m_NAtagCSHeroDismiss.Head.SubCmd))] = m_NAtagCSHeroDismiss
+
+
+#------------------------------------------------------
+# B2 41 武将宿缘 #tagCSHeroFates
+
+class tagCSHeroFates(Structure):
+ Head = tagHead()
+ FatesID = 0 #(BYTE FatesID)// 宿缘ID
+ OPType = 0 #(BYTE OPType)// 0-激活领奖;1-升级
+ IndexCnt = 0 #(BYTE IndexCnt)
+ ItemIndexList = list() #(vector<WORD> ItemIndexList)// 升级时消耗的材料卡在武将背包索引列表,升级时才发
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ self.Head.Cmd = 0xB2
+ self.Head.SubCmd = 0x41
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.FatesID,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.OPType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.IndexCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.IndexCnt):
+ value,_pos=CommFunc.ReadWORD(_lpData,_pos)
+ self.ItemIndexList.append(value)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xB2
+ self.Head.SubCmd = 0x41
+ self.FatesID = 0
+ self.OPType = 0
+ self.IndexCnt = 0
+ self.ItemIndexList = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ length += 1
+ length += 1
+ length += 2 * self.IndexCnt
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.FatesID)
+ data = CommFunc.WriteBYTE(data, self.OPType)
+ data = CommFunc.WriteBYTE(data, self.IndexCnt)
+ for i in range(self.IndexCnt):
+ data = CommFunc.WriteWORD(data, self.ItemIndexList[i])
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ FatesID:%d,
+ OPType:%d,
+ IndexCnt:%d,
+ ItemIndexList:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.FatesID,
+ self.OPType,
+ self.IndexCnt,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagCSHeroFates=tagCSHeroFates()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSHeroFates.Head.Cmd,m_NAtagCSHeroFates.Head.SubCmd))] = m_NAtagCSHeroFates
#------------------------------------------------------
@@ -13723,9 +13594,9 @@
#------------------------------------------------------
-# B3 20 聊天 #tagCMTalk
+# B3 20 聊天 #tagCSTalk
-class tagCMPyTalk(Structure):
+class tagCSTalk(Structure):
Head = tagHead()
ChannelType = 0 #(BYTE ChannelType)// 频道
Len = 0 #(WORD Len)
@@ -13789,6 +13660,9 @@
return DumpString
+m_NAtagCSTalk=tagCSTalk()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSTalk.Head.Cmd,m_NAtagCSTalk.Head.SubCmd))] = m_NAtagCSTalk
+
#------------------------------------------------------
# B4 12 战斗阵容保存 #tagCSHeroLineupSave
--
Gitblit v1.8.0