From 21633503720673ff5d9074a3126e9ed652178594 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 13 十月 2025 15:17:47 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(优化战斗结算时机,修复某个阵营全部被击杀后在某些情况下不会马上结算的bug;)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 1326 +++------------------------------------------------------
1 files changed, 69 insertions(+), 1,257 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
index 9a3f902..4c239d2 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py
@@ -1083,162 +1083,6 @@
#------------------------------------------------------
-# A2 10 清除副本CD#tagCMClearFBCD
-
-class tagCMClearFBCD(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("MapID", c_int),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA2
- 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 = 0xA2
- self.SubCmd = 0x10
- self.MapID = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMClearFBCD)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A2 10 清除副本CD//tagCMClearFBCD:
- Cmd:%s,
- SubCmd:%s,
- MapID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.MapID
- )
- return DumpString
-
-
-m_NAtagCMClearFBCD=tagCMClearFBCD()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMClearFBCD.Cmd,m_NAtagCMClearFBCD.SubCmd))] = m_NAtagCMClearFBCD
-
-
-#------------------------------------------------------
-# 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):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("MapID", c_int),
- ("FuncLineID", c_ushort),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA2
- self.SubCmd = 0x31
- 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 = 0x31
- self.MapID = 0
- self.FuncLineID = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMClientStartCustomScene)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A2 31 前端开始自定义场景 //tagCMClientStartCustomScene:
- Cmd:%s,
- SubCmd:%s,
- MapID:%d,
- FuncLineID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.MapID,
- self.FuncLineID
- )
- return DumpString
-
-
-m_NAtagCMClientStartCustomScene=tagCMClientStartCustomScene()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMClientStartCustomScene.Cmd,m_NAtagCMClientStartCustomScene.SubCmd))] = m_NAtagCMClientStartCustomScene
-
-
-#------------------------------------------------------
# A2 24 触碰NPC #tagCMTouchNPC
class tagCMTouchNPC(Structure):
@@ -1288,58 +1132,6 @@
m_NAtagCMTouchNPC=tagCMTouchNPC()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMTouchNPC.Cmd,m_NAtagCMTouchNPC.SubCmd))] = m_NAtagCMTouchNPC
-
-
-#------------------------------------------------------
-# A2 34 自定义场景中获取采集奖励 #tagCMGetCustomSceneCollectAward
-
-class tagCMGetCustomSceneCollectAward(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("NPCID", c_int), #采集的NPCID
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA2
- self.SubCmd = 0x34
- 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 = 0x34
- self.NPCID = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMGetCustomSceneCollectAward)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A2 34 自定义场景中获取采集奖励 //tagCMGetCustomSceneCollectAward:
- Cmd:%s,
- SubCmd:%s,
- NPCID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.NPCID
- )
- return DumpString
-
-
-m_NAtagCMGetCustomSceneCollectAward=tagCMGetCustomSceneCollectAward()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGetCustomSceneCollectAward.Cmd,m_NAtagCMGetCustomSceneCollectAward.SubCmd))] = m_NAtagCMGetCustomSceneCollectAward
#------------------------------------------------------
@@ -3580,73 +3372,6 @@
#------------------------------------------------------
-# A3 12 守护拾取物品 #tagCMGuardPickupItem
-
-class tagCMGuardPickupItem(Structure):
- Head = tagHead()
- ItemCount = 0 #(WORD ItemCount)
- MapItemID = list() #(vector<WORD> MapItemID)//size = ItemCount
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x12
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.ItemCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
- for i in range(self.ItemCount):
- value,_pos=CommFunc.ReadWORD(_lpData,_pos)
- self.MapItemID.append(value)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA3
- self.Head.SubCmd = 0x12
- self.ItemCount = 0
- self.MapItemID = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 2
- length += 2 * self.ItemCount
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteWORD(data, self.ItemCount)
- for i in range(self.ItemCount):
- data = CommFunc.WriteWORD(data, self.MapItemID[i])
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- ItemCount:%d,
- MapItemID:%s
- '''\
- %(
- self.Head.OutputString(),
- self.ItemCount,
- "..."
- )
- return DumpString
-
-
-m_NAtagCMGuardPickupItem=tagCMGuardPickupItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGuardPickupItem.Head.Cmd,m_NAtagCMGuardPickupItem.Head.SubCmd))] = m_NAtagCMGuardPickupItem
-
-
-#------------------------------------------------------
# A3 13 物品拆解 #tagCMItemDecompound
class tagCMItemDecompound(Structure):
@@ -5328,9 +5053,7 @@
("MapID", c_int),
("LineID", c_ushort),
("Cnt", c_ubyte), # 扫荡次数
- ("IsFinish", c_ubyte), # 是否立即完成; 0-否;1-花钱立即完成;2-客户端自行倒计时间到后发送2代表领取扫荡完成奖励
("DataEx", c_int), #附带信息
- ("IsLittleHelper", c_ubyte), # 是否小助手扫荡
]
def __init__(self):
@@ -5350,9 +5073,7 @@
self.MapID = 0
self.LineID = 0
self.Cnt = 0
- self.IsFinish = 0
self.DataEx = 0
- self.IsLittleHelper = 0
return
def GetLength(self):
@@ -5368,9 +5089,7 @@
MapID:%d,
LineID:%d,
Cnt:%d,
- IsFinish:%d,
- DataEx:%d,
- IsLittleHelper:%d
+ DataEx:%d
'''\
%(
self.Cmd,
@@ -5378,9 +5097,7 @@
self.MapID,
self.LineID,
self.Cnt,
- self.IsFinish,
- self.DataEx,
- self.IsLittleHelper
+ self.DataEx
)
return DumpString
@@ -5772,54 +5489,6 @@
m_NAtagCMBuyEnterCount=tagCMBuyEnterCount()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMBuyEnterCount.Cmd,m_NAtagCMBuyEnterCount.SubCmd))] = m_NAtagCMBuyEnterCount
-
-
-#------------------------------------------------------
-# A5 1B 购买挑战副本精力 #tagCMBuyFBEnergy
-
-class tagCMBuyFBEnergy(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x1B
- 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 = 0xA5
- self.SubCmd = 0x1B
- return
-
- def GetLength(self):
- return sizeof(tagCMBuyFBEnergy)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A5 1B 购买挑战副本精力 //tagCMBuyFBEnergy:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMBuyFBEnergy=tagCMBuyFBEnergy()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMBuyFBEnergy.Cmd,m_NAtagCMBuyFBEnergy.SubCmd))] = m_NAtagCMBuyFBEnergy
#------------------------------------------------------
@@ -6313,14 +5982,14 @@
#------------------------------------------------------
-#A5 09 玩家签到 #tagCMDaySign
+#A5 09 玩家签到领奖 #tagCSDaySign
-class tagCMDaySign(Structure):
+class tagCSDaySign(Structure):
_pack_ = 1
_fields_ = [
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
- ("Day", c_ubyte), #默认0表示当日签到,可扩展做补签用
+ ("Day", c_ubyte), # 第x天,从1开始
]
def __init__(self):
@@ -6341,13 +6010,13 @@
return
def GetLength(self):
- return sizeof(tagCMDaySign)
+ return sizeof(tagCSDaySign)
def GetBuffer(self):
return string_at(addressof(self), self.GetLength())
def OutputString(self):
- DumpString = '''//A5 09 玩家签到 //tagCMDaySign:
+ DumpString = '''//A5 09 玩家签到领奖 //tagCSDaySign:
Cmd:%s,
SubCmd:%s,
Day:%d
@@ -6360,8 +6029,8 @@
return DumpString
-m_NAtagCMDaySign=tagCMDaySign()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMDaySign.Cmd,m_NAtagCMDaySign.SubCmd))] = m_NAtagCMDaySign
+m_NAtagCSDaySign=tagCSDaySign()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSDaySign.Cmd,m_NAtagCSDaySign.SubCmd))] = m_NAtagCSDaySign
#------------------------------------------------------
@@ -7062,62 +6731,6 @@
m_NAtagCMGetInvestReward=tagCMGetInvestReward()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGetInvestReward.Cmd,m_NAtagCMGetInvestReward.SubCmd))] = m_NAtagCMGetInvestReward
-
-
-#------------------------------------------------------
-#A5 06 玩家领取在线奖励 #tagCMGetOnlinePrize
-
-class tagCMGetOnlinePrize(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("Index", c_ubyte), # 奖励索引,其他按顺序
- ("IsDaily", c_ubyte), # 是否领取每日日常的奖励,是发1,如果领取定制创角天奖励的则默认发0即可
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x06
- 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 = 0xA5
- self.SubCmd = 0x06
- self.Index = 0
- self.IsDaily = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMGetOnlinePrize)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//A5 06 玩家领取在线奖励 //tagCMGetOnlinePrize:
- Cmd:%s,
- SubCmd:%s,
- Index:%d,
- IsDaily:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.Index,
- self.IsDaily
- )
- return DumpString
-
-
-m_NAtagCMGetOnlinePrize=tagCMGetOnlinePrize()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGetOnlinePrize.Cmd,m_NAtagCMGetOnlinePrize.SubCmd))] = m_NAtagCMGetOnlinePrize
#------------------------------------------------------
@@ -8027,54 +7640,6 @@
#------------------------------------------------------
-#A5 07 查询在线奖励 #tagCMQueryOnlinePrizeInfo
-
-class tagCMQueryOnlinePrizeInfo(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x07
- 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 = 0xA5
- self.SubCmd = 0x07
- return
-
- def GetLength(self):
- return sizeof(tagCMQueryOnlinePrizeInfo)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//A5 07 查询在线奖励 //tagCMQueryOnlinePrizeInfo:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMQueryOnlinePrizeInfo=tagCMQueryOnlinePrizeInfo()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMQueryOnlinePrizeInfo.Cmd,m_NAtagCMQueryOnlinePrizeInfo.SubCmd))] = m_NAtagCMQueryOnlinePrizeInfo
-
-
-#------------------------------------------------------
# A5 23 提升境界等级 # tagCMRealmLVUp
class tagCMRealmLVUp(Structure):
@@ -8120,90 +7685,6 @@
m_NAtagCMRealmLVUp=tagCMRealmLVUp()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRealmLVUp.Cmd,m_NAtagCMRealmLVUp.SubCmd))] = m_NAtagCMRealmLVUp
-
-
-#------------------------------------------------------
-# A5 53 资源找回 #tagCMRecoverGain
-
-class tagCMRecoverGain(Structure):
- Head = tagHead()
- Type = 0 #(BYTE Type)// 找回方式 0 仙玉 1铜钱
- Cnt = 0 #(BYTE Cnt)
- IndexList = list() #(vector<BYTE> IndexList)// 找回索引列表
- RecoverCntList = list() #(vector<BYTE> RecoverCntList)// 索引对应找回次数列表
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA5
- self.Head.SubCmd = 0x53
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.Type,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- self.Cnt,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.Cnt):
- value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
- self.IndexList.append(value)
- for i in range(self.Cnt):
- value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
- self.RecoverCntList.append(value)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA5
- self.Head.SubCmd = 0x53
- self.Type = 0
- self.Cnt = 0
- self.IndexList = list()
- self.RecoverCntList = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- length += 1
- length += 1 * self.Cnt
- length += 1 * self.Cnt
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteBYTE(data, self.Type)
- data = CommFunc.WriteBYTE(data, self.Cnt)
- for i in range(self.Cnt):
- data = CommFunc.WriteBYTE(data, self.IndexList[i])
- for i in range(self.Cnt):
- data = CommFunc.WriteBYTE(data, self.RecoverCntList[i])
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- Type:%d,
- Cnt:%d,
- IndexList:%s,
- RecoverCntList:%s
- '''\
- %(
- self.Head.OutputString(),
- self.Type,
- self.Cnt,
- "...",
- "..."
- )
- return DumpString
-
-
-m_NAtagCMRecoverGain=tagCMRecoverGain()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRecoverGain.Head.Cmd,m_NAtagCMRecoverGain.Head.SubCmd))] = m_NAtagCMRecoverGain
#------------------------------------------------------
@@ -8428,54 +7909,6 @@
m_NAtagCMRequestTreasure=tagCMRequestTreasure()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRequestTreasure.Cmd,m_NAtagCMRequestTreasure.SubCmd))] = m_NAtagCMRequestTreasure
-
-
-#------------------------------------------------------
-#A5 60 重置副本挑战次数 #tagCMResetFBJoinCnt
-
-class tagCMResetFBJoinCnt(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0x60
- 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 = 0xA5
- self.SubCmd = 0x60
- return
-
- def GetLength(self):
- return sizeof(tagCMResetFBJoinCnt)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''//A5 60 重置副本挑战次数 //tagCMResetFBJoinCnt:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMResetFBJoinCnt=tagCMResetFBJoinCnt()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMResetFBJoinCnt.Cmd,m_NAtagCMResetFBJoinCnt.SubCmd))] = m_NAtagCMResetFBJoinCnt
#------------------------------------------------------
@@ -8856,54 +8289,6 @@
#------------------------------------------------------
-# A5 11 试用首充武器 #tagCMTryFirstGoldItem
-
-class tagCMTryFirstGoldItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA5
- 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 = 0xA5
- self.SubCmd = 0x11
- return
-
- def GetLength(self):
- return sizeof(tagCMTryFirstGoldItem)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A5 11 试用首充武器 //tagCMTryFirstGoldItem:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMTryFirstGoldItem=tagCMTryFirstGoldItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMTryFirstGoldItem.Cmd,m_NAtagCMTryFirstGoldItem.SubCmd))] = m_NAtagCMTryFirstGoldItem
-
-
-#------------------------------------------------------
# A5 73 解锁命格孔 #tagCMUnLockBirthChartHole
class tagCMUnLockBirthChartHole(Structure):
@@ -9068,52 +8453,64 @@
# A6 24 修改家族徽章 #tagCMChangeFamilyEmblem
class tagCMChangeFamilyEmblem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("EmblemID", c_ubyte), # 更换的徽章ID
- ]
+ Head = tagHead()
+ EmblemID = 0 #(BYTE EmblemID)// 更换的徽章ID
+ EmblemWord = "" #(char EmblemWord[3])// 徽章文字
+ data = None
def __init__(self):
self.Clear()
- self.Cmd = 0xA6
- self.SubCmd = 0x24
+ self.Head.Cmd = 0xA6
+ self.Head.SubCmd = 0x24
return
- def ReadData(self, stringData, _pos=0, _len=0):
+ def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
- memmove(addressof(self), stringData[_pos:], self.GetLength())
- return _pos + self.GetLength()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.EmblemID,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.EmblemWord,_pos = CommFunc.ReadString(_lpData, _pos,3)
+ return _pos
def Clear(self):
- self.Cmd = 0xA6
- self.SubCmd = 0x24
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xA6
+ self.Head.SubCmd = 0x24
self.EmblemID = 0
+ self.EmblemWord = ""
return
def GetLength(self):
- return sizeof(tagCMChangeFamilyEmblem)
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ length += 3
+
+ return length
def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.EmblemID)
+ data = CommFunc.WriteString(data, 3, self.EmblemWord)
+ return data
def OutputString(self):
- DumpString = '''// A6 24 修改家族徽章 //tagCMChangeFamilyEmblem:
- Cmd:%s,
- SubCmd:%s,
- EmblemID:%d
+ DumpString = '''
+ Head:%s,
+ EmblemID:%d,
+ EmblemWord:%s
'''\
%(
- self.Cmd,
- self.SubCmd,
- self.EmblemID
+ self.Head.OutputString(),
+ self.EmblemID,
+ self.EmblemWord
)
return DumpString
m_NAtagCMChangeFamilyEmblem=tagCMChangeFamilyEmblem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChangeFamilyEmblem.Cmd,m_NAtagCMChangeFamilyEmblem.SubCmd))] = m_NAtagCMChangeFamilyEmblem
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChangeFamilyEmblem.Head.Cmd,m_NAtagCMChangeFamilyEmblem.Head.SubCmd))] = m_NAtagCMChangeFamilyEmblem
#------------------------------------------------------
@@ -9366,6 +8763,7 @@
Head = tagHead()
Name = "" #(char Name[33])
EmblemID = 0 #(WORD EmblemID)//选择徽章ID,解锁仙盟等级为1级的均为可选ID
+ EmblemWord = "" #(char EmblemWord[3])//徽章文字
data = None
def __init__(self):
@@ -9379,6 +8777,7 @@
_pos = self.Head.ReadData(_lpData, _pos)
self.Name,_pos = CommFunc.ReadString(_lpData, _pos,33)
self.EmblemID,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.EmblemWord,_pos = CommFunc.ReadString(_lpData, _pos,3)
return _pos
def Clear(self):
@@ -9388,6 +8787,7 @@
self.Head.SubCmd = 0x04
self.Name = ""
self.EmblemID = 0
+ self.EmblemWord = ""
return
def GetLength(self):
@@ -9395,6 +8795,7 @@
length += self.Head.GetLength()
length += 33
length += 2
+ length += 3
return length
@@ -9403,18 +8804,21 @@
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
data = CommFunc.WriteString(data, 33, self.Name)
data = CommFunc.WriteWORD(data, self.EmblemID)
+ data = CommFunc.WriteString(data, 3, self.EmblemWord)
return data
def OutputString(self):
DumpString = '''
Head:%s,
Name:%s,
- EmblemID:%d
+ EmblemID:%d,
+ EmblemWord:%s
'''\
%(
self.Head.OutputString(),
self.Name,
- self.EmblemID
+ self.EmblemID,
+ self.EmblemWord
)
return DumpString
@@ -9473,139 +8877,6 @@
m_NAtagCMDeleteFamilyMember=tagCMDeleteFamilyMember()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMDeleteFamilyMember.Cmd,m_NAtagCMDeleteFamilyMember.SubCmd))] = m_NAtagCMDeleteFamilyMember
-
-
-#------------------------------------------------------
-# A6 06 家族兑换活跃令 #tagCMFamilyActivityExchange
-
-class tagCMFamilyActivityExchange(Structure):
- Head = tagHead()
- Count = 0 #(BYTE Count)//材料所在背包索引的数量
- IndexList = list() #(vector<WORD> IndexList)//材料所在背包索引列表
- ItemIDList = list() #(vector<DWORD> ItemIDList)//材料所在背包物品ID列表
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xA6
- self.Head.SubCmd = 0x06
- 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):
- value,_pos=CommFunc.ReadWORD(_lpData,_pos)
- self.IndexList.append(value)
- for i in range(self.Count):
- value,_pos=CommFunc.ReadDWORD(_lpData,_pos)
- self.ItemIDList.append(value)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xA6
- self.Head.SubCmd = 0x06
- self.Count = 0
- self.IndexList = list()
- self.ItemIDList = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 1
- length += 2 * self.Count
- length += 4 * self.Count
-
- 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.WriteWORD(data, self.IndexList[i])
- for i in range(self.Count):
- data = CommFunc.WriteDWORD(data, self.ItemIDList[i])
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- Count:%d,
- IndexList:%s,
- ItemIDList:%s
- '''\
- %(
- self.Head.OutputString(),
- self.Count,
- "...",
- "..."
- )
- return DumpString
-
-
-m_NAtagCMFamilyActivityExchange=tagCMFamilyActivityExchange()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyActivityExchange.Head.Cmd,m_NAtagCMFamilyActivityExchange.Head.SubCmd))] = m_NAtagCMFamilyActivityExchange
-
-
-#------------------------------------------------------
-# A6 13 家族事务操作 #tagCMFamilyAffairOP
-
-class tagCMFamilyAffairOP(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("OPType", c_ubyte), # 操作类型:1-刷新事务;2-开始事务;3-领取事务奖励;
- ("AffairID", c_ushort), # 事务ID,可选
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA6
- self.SubCmd = 0x13
- 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 = 0xA6
- self.SubCmd = 0x13
- self.OPType = 0
- self.AffairID = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMFamilyAffairOP)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A6 13 家族事务操作 //tagCMFamilyAffairOP:
- Cmd:%s,
- SubCmd:%s,
- OPType:%d,
- AffairID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.OPType,
- self.AffairID
- )
- return DumpString
-
-
-m_NAtagCMFamilyAffairOP=tagCMFamilyAffairOP()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyAffairOP.Cmd,m_NAtagCMFamilyAffairOP.SubCmd))] = m_NAtagCMFamilyAffairOP
#------------------------------------------------------
@@ -10231,58 +9502,6 @@
m_NAtagCMSendFamilyRedPacket=tagCMSendFamilyRedPacket()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMSendFamilyRedPacket.Head.Cmd,m_NAtagCMSendFamilyRedPacket.Head.SubCmd))] = m_NAtagCMSendFamilyRedPacket
-
-
-#------------------------------------------------------
-# A6 07 自身家族科技等级提升 #tagCMFamilyTechLVUP
-
-class tagCMFamilyTechLVUP(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("TechID", c_int), # 科技ID
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xA6
- self.SubCmd = 0x07
- 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 = 0xA6
- self.SubCmd = 0x07
- self.TechID = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMFamilyTechLVUP)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// A6 07 自身家族科技等级提升 //tagCMFamilyTechLVUP:
- Cmd:%s,
- SubCmd:%s,
- TechID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.TechID
- )
- return DumpString
-
-
-m_NAtagCMFamilyTechLVUP=tagCMFamilyTechLVUP()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFamilyTechLVUP.Cmd,m_NAtagCMFamilyTechLVUP.SubCmd))] = m_NAtagCMFamilyTechLVUP
#------------------------------------------------------
@@ -13591,174 +12810,6 @@
#------------------------------------------------------
-# B1 01 客户端副本发送结束 #tagCMClientEndFB
-
-class tagCMClientEndFB(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("MapID", c_int),
- ("LineID", c_ushort),
- ("Data1", c_int), #副本数据
- ("Data2", c_int), #副本数据
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB1
- 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 = 0xB1
- self.SubCmd = 0x01
- self.MapID = 0
- self.LineID = 0
- self.Data1 = 0
- self.Data2 = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMClientEndFB)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B1 01 客户端副本发送结束 //tagCMClientEndFB:
- Cmd:%s,
- SubCmd:%s,
- MapID:%d,
- LineID:%d,
- Data1:%d,
- Data2:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.MapID,
- self.LineID,
- self.Data1,
- self.Data2
- )
- return DumpString
-
-
-m_NAtagCMClientEndFB=tagCMClientEndFB()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMClientEndFB.Cmd,m_NAtagCMClientEndFB.SubCmd))] = m_NAtagCMClientEndFB
-
-
-#------------------------------------------------------
-# B1 04 客户端发送开始副本 #tagCMClientStartFB
-
-class tagCMClientStartFB(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB1
- self.SubCmd = 0x04
- 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 = 0x04
- return
-
- def GetLength(self):
- return sizeof(tagCMClientStartFB)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B1 04 客户端发送开始副本 //tagCMClientStartFB:
- Cmd:%s,
- SubCmd:%s
- '''\
- %(
- self.Cmd,
- self.SubCmd
- )
- return DumpString
-
-
-m_NAtagCMClientStartFB=tagCMClientStartFB()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMClientStartFB.Cmd,m_NAtagCMClientStartFB.SubCmd))] = m_NAtagCMClientStartFB
-
-
-#------------------------------------------------------
-# B1 0A 副本购买buff #tagCMFBBuyBuff
-
-class tagCMFBBuyBuff(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("MapID", c_int),
- ("MoneyCnt", c_ushort),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB1
- self.SubCmd = 0x0A
- 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 = 0x0A
- self.MapID = 0
- self.MoneyCnt = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMFBBuyBuff)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B1 0A 副本购买buff //tagCMFBBuyBuff:
- Cmd:%s,
- SubCmd:%s,
- MapID:%d,
- MoneyCnt:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.MapID,
- self.MoneyCnt
- )
- return DumpString
-
-
-m_NAtagCMFBBuyBuff=tagCMFBBuyBuff()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFBBuyBuff.Cmd,m_NAtagCMFBBuyBuff.SubCmd))] = m_NAtagCMFBBuyBuff
-
-
-#------------------------------------------------------
# B1 08 快速一键过关副本 #tagCMFBQuickPass
class tagCMFBQuickPass(Structure):
@@ -13812,66 +12863,6 @@
m_NAtagCMFBQuickPass=tagCMFBQuickPass()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFBQuickPass.Cmd,m_NAtagCMFBQuickPass.SubCmd))] = m_NAtagCMFBQuickPass
-
-
-#------------------------------------------------------
-# B1 02 领取多倍副本奖励 #tagCMGetMultiFBPrize
-
-class tagCMGetMultiFBPrize(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("MapID", c_int),
- ("LineID", c_ushort),
- ("Percent", c_ushort), # 额外奖励百分比, 如50代表额外50%奖励
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB1
- self.SubCmd = 0x02
- 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 = 0x02
- self.MapID = 0
- self.LineID = 0
- self.Percent = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMGetMultiFBPrize)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B1 02 领取多倍副本奖励 //tagCMGetMultiFBPrize:
- Cmd:%s,
- SubCmd:%s,
- MapID:%d,
- LineID:%d,
- Percent:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.MapID,
- self.LineID,
- self.Percent
- )
- return DumpString
-
-
-m_NAtagCMGetMultiFBPrize=tagCMGetMultiFBPrize()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGetMultiFBPrize.Cmd,m_NAtagCMGetMultiFBPrize.SubCmd))] = m_NAtagCMGetMultiFBPrize
#------------------------------------------------------
@@ -14441,15 +13432,18 @@
#------------------------------------------------------
# B2 17 古宝升星 #tagCMGubaoStarUp
-class tagCMGubaoPieceUse(Structure):
+class tagCMGubaoStarUp(Structure):
_pack_ = 1
_fields_ = [
- ("GubaoID", c_ushort), # 通用碎片古宝ID
- ("PieceCount", c_ushort), # 使用碎片个数
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ("GubaoID", c_ushort),
]
def __init__(self):
self.Clear()
+ self.Cmd = 0xB2
+ self.SubCmd = 0x17
return
def ReadData(self, stringData, _pos=0, _len=0):
@@ -14458,99 +13452,33 @@
return _pos + self.GetLength()
def Clear(self):
+ self.Cmd = 0xB2
+ self.SubCmd = 0x17
self.GubaoID = 0
- self.PieceCount = 0
return
def GetLength(self):
- return sizeof(tagCMGubaoPieceUse)
+ return sizeof(tagCMGubaoStarUp)
def GetBuffer(self):
return string_at(addressof(self), self.GetLength())
def OutputString(self):
DumpString = '''// B2 17 古宝升星 //tagCMGubaoStarUp:
- GubaoID:%d,
- PieceCount:%d
+ Cmd:%s,
+ SubCmd:%s,
+ GubaoID:%d
'''\
%(
- self.GubaoID,
- self.PieceCount
- )
- return DumpString
-
-
-class tagCMGubaoStarUp(Structure):
- Head = tagHead()
- GubaoID = 0 #(WORD GubaoID)
- PieceSelectCount = 0 #(BYTE PieceSelectCount)
- CommPieceUseList = list() #(vector<tagCMGubaoPieceUse> CommPieceUseList)// 通用古宝碎片使用列表
- data = None
-
- def __init__(self):
- self.Clear()
- self.Head.Cmd = 0xB2
- self.Head.SubCmd = 0x17
- return
-
- def ReadData(self, _lpData, _pos=0, _Len=0):
- self.Clear()
- _pos = self.Head.ReadData(_lpData, _pos)
- self.GubaoID,_pos = CommFunc.ReadWORD(_lpData, _pos)
- self.PieceSelectCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
- for i in range(self.PieceSelectCount):
- temCommPieceUseList = tagCMGubaoPieceUse()
- _pos = temCommPieceUseList.ReadData(_lpData, _pos)
- self.CommPieceUseList.append(temCommPieceUseList)
- return _pos
-
- def Clear(self):
- self.Head = tagHead()
- self.Head.Clear()
- self.Head.Cmd = 0xB2
- self.Head.SubCmd = 0x17
- self.GubaoID = 0
- self.PieceSelectCount = 0
- self.CommPieceUseList = list()
- return
-
- def GetLength(self):
- length = 0
- length += self.Head.GetLength()
- length += 2
- length += 1
- for i in range(self.PieceSelectCount):
- length += self.CommPieceUseList[i].GetLength()
-
- return length
-
- def GetBuffer(self):
- data = ''
- data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteWORD(data, self.GubaoID)
- data = CommFunc.WriteBYTE(data, self.PieceSelectCount)
- for i in range(self.PieceSelectCount):
- data = CommFunc.WriteString(data, self.CommPieceUseList[i].GetLength(), self.CommPieceUseList[i].GetBuffer())
- return data
-
- def OutputString(self):
- DumpString = '''
- Head:%s,
- GubaoID:%d,
- PieceSelectCount:%d,
- CommPieceUseList:%s
- '''\
- %(
- self.Head.OutputString(),
- self.GubaoID,
- self.PieceSelectCount,
- "..."
+ self.Cmd,
+ self.SubCmd,
+ self.GubaoID
)
return DumpString
m_NAtagCMGubaoStarUp=tagCMGubaoStarUp()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGubaoStarUp.Head.Cmd,m_NAtagCMGubaoStarUp.Head.SubCmd))] = m_NAtagCMGubaoStarUp
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGubaoStarUp.Cmd,m_NAtagCMGubaoStarUp.SubCmd))] = m_NAtagCMGubaoStarUp
#------------------------------------------------------
@@ -16720,58 +15648,6 @@
#------------------------------------------------------
-# B4 0F 回收私有专属木桩怪 #tagCMRecyclePriWoodPile
-
-class tagCMRecyclePriWoodPile(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("ObjID", c_int),
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB4
- self.SubCmd = 0x0F
- 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 = 0xB4
- self.SubCmd = 0x0F
- self.ObjID = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMRecyclePriWoodPile)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B4 0F 回收私有专属木桩怪 //tagCMRecyclePriWoodPile:
- Cmd:%s,
- SubCmd:%s,
- ObjID:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.ObjID
- )
- return DumpString
-
-
-m_NAtagCMRecyclePriWoodPile=tagCMRecyclePriWoodPile()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRecyclePriWoodPile.Cmd,m_NAtagCMRecyclePriWoodPile.SubCmd))] = m_NAtagCMRecyclePriWoodPile
-
-
-#------------------------------------------------------
# B4 0E 玩家掉血 #tagCMRoleLostHP
class tagCMRoleLostHP(Structure):
@@ -16825,70 +15701,6 @@
m_NAtagCMRoleLostHP=tagCMRoleLostHP()
ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRoleLostHP.Cmd,m_NAtagCMRoleLostHP.SubCmd))] = m_NAtagCMRoleLostHP
-
-
-#------------------------------------------------------
-# B4 0C 召唤私有专属木桩怪 #tagCMSummonPriWoodPile
-
-class tagCMSummonPriWoodPile(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("NPCID", c_int),
- ("Count", c_ubyte), #默认1个,最多5个
- ("HP", c_int), #默认0取最大值,其中一个血量数值大于0则用指定血量
- ("HPEx", c_int), #默认0取最大值,其中一个血量数值大于0则用指定血量
- ]
-
- def __init__(self):
- self.Clear()
- self.Cmd = 0xB4
- self.SubCmd = 0x0C
- 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 = 0xB4
- self.SubCmd = 0x0C
- self.NPCID = 0
- self.Count = 0
- self.HP = 0
- self.HPEx = 0
- return
-
- def GetLength(self):
- return sizeof(tagCMSummonPriWoodPile)
-
- def GetBuffer(self):
- return string_at(addressof(self), self.GetLength())
-
- def OutputString(self):
- DumpString = '''// B4 0C 召唤私有专属木桩怪 //tagCMSummonPriWoodPile:
- Cmd:%s,
- SubCmd:%s,
- NPCID:%d,
- Count:%d,
- HP:%d,
- HPEx:%d
- '''\
- %(
- self.Cmd,
- self.SubCmd,
- self.NPCID,
- self.Count,
- self.HP,
- self.HPEx
- )
- return DumpString
-
-
-m_NAtagCMSummonPriWoodPile=tagCMSummonPriWoodPile()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMSummonPriWoodPile.Cmd,m_NAtagCMSummonPriWoodPile.SubCmd))] = m_NAtagCMSummonPriWoodPile
#------------------------------------------------------
--
Gitblit v1.8.0