From a90e9dd726f63017404ed69d8c682956e42cd172 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期二, 26 八月 2025 10:24:06 +0800 Subject: [PATCH] 1111 删除不需要内容; --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 2618 ++-------------------------------------------------------- 1 files changed, 123 insertions(+), 2,495 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py index 658d84e..82a2cc6 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py @@ -673,54 +673,6 @@ #------------------------------------------------------ -# A1 09 同步打包玩家数据 #tagCMSycnPlayerPackData - -class tagCMSycnPlayerPackData(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA1 - 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 = 0xA1 - self.SubCmd = 0x09 - return - - def GetLength(self): - return sizeof(tagCMSycnPlayerPackData) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A1 09 同步打包玩家数据 //tagCMSycnPlayerPackData: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCMSycnPlayerPackData=tagCMSycnPlayerPackData() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMSycnPlayerPackData.Cmd,m_NAtagCMSycnPlayerPackData.SubCmd))] = m_NAtagCMSycnPlayerPackData - - -#------------------------------------------------------ #A1 03 设置是否成年 #tagCMAdult class tagCMAdult(Structure): @@ -1779,66 +1731,6 @@ #------------------------------------------------------ -# A2 28 查询仙盟抢Boss伤血列表 #tagCMQueryFamilyBossHurt - -class tagCMQueryFamilyBossHurt(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("ObjID", c_int), - ("NPCID", c_int), - ("QueryType", c_ubyte), # 0-实时仙盟伤血,1-历史仙盟伤血,2-实时玩家伤血,3-历史玩家伤血 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA2 - self.SubCmd = 0x28 - 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 = 0x28 - self.ObjID = 0 - self.NPCID = 0 - self.QueryType = 0 - return - - def GetLength(self): - return sizeof(tagCMQueryFamilyBossHurt) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A2 28 查询仙盟抢Boss伤血列表 //tagCMQueryFamilyBossHurt: - Cmd:%s, - SubCmd:%s, - ObjID:%d, - NPCID:%d, - QueryType:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.ObjID, - self.NPCID, - self.QueryType - ) - return DumpString - - -m_NAtagCMQueryFamilyBossHurt=tagCMQueryFamilyBossHurt() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMQueryFamilyBossHurt.Cmd,m_NAtagCMQueryFamilyBossHurt.SubCmd))] = m_NAtagCMQueryFamilyBossHurt - - -#------------------------------------------------------ # A2 27 查询地图NPC数量信息 #tagCMQueryNPCCntInfo class tagCMQueryNPCCntInfo(Structure): @@ -2674,58 +2566,6 @@ m_NAtagCMViewPlayerInfo=tagCMViewPlayerInfo() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMViewPlayerInfo.Cmd,m_NAtagCMViewPlayerInfo.SubCmd))] = m_NAtagCMViewPlayerInfo - - -#------------------------------------------------------ -# A3 17 增加果实使用上限 #tagCMAddFruitUseLimit - -class tagCMAddFruitUseLimit(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("ItemID", c_int), #果实物品ID - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA3 - self.SubCmd = 0x17 - 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 = 0xA3 - self.SubCmd = 0x17 - self.ItemID = 0 - return - - def GetLength(self): - return sizeof(tagCMAddFruitUseLimit) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A3 17 增加果实使用上限 //tagCMAddFruitUseLimit: - Cmd:%s, - SubCmd:%s, - ItemID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.ItemID - ) - return DumpString - - -m_NAtagCMAddFruitUseLimit=tagCMAddFruitUseLimit() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMAddFruitUseLimit.Cmd,m_NAtagCMAddFruitUseLimit.SubCmd))] = m_NAtagCMAddFruitUseLimit #------------------------------------------------------ @@ -4091,83 +3931,6 @@ #------------------------------------------------------ -# A3 2A 回收魂石 #tagCMRecycleAttrFruit - -class tagCMRecycleAttrFruit(Structure): - Head = tagHead() - IndexCount = 0 #(BYTE IndexCount)//索引个数 - IndexList = list() #(vector<BYTE> IndexList)//物品在背包中索引列表 - RecycleCountList = list() #(vector<WORD> RecycleCountList)//索引对应回收个数列表 - data = None - - def __init__(self): - self.Clear() - self.Head.Cmd = 0xA3 - self.Head.SubCmd = 0x2A - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - _pos = self.Head.ReadData(_lpData, _pos) - self.IndexCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) - for i in range(self.IndexCount): - value,_pos=CommFunc.ReadBYTE(_lpData,_pos) - self.IndexList.append(value) - for i in range(self.IndexCount): - value,_pos=CommFunc.ReadWORD(_lpData,_pos) - self.RecycleCountList.append(value) - return _pos - - def Clear(self): - self.Head = tagHead() - self.Head.Clear() - self.Head.Cmd = 0xA3 - self.Head.SubCmd = 0x2A - self.IndexCount = 0 - self.IndexList = list() - self.RecycleCountList = list() - return - - def GetLength(self): - length = 0 - length += self.Head.GetLength() - length += 1 - length += 1 * self.IndexCount - length += 2 * self.IndexCount - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) - data = CommFunc.WriteBYTE(data, self.IndexCount) - for i in range(self.IndexCount): - data = CommFunc.WriteBYTE(data, self.IndexList[i]) - for i in range(self.IndexCount): - data = CommFunc.WriteWORD(data, self.RecycleCountList[i]) - return data - - def OutputString(self): - DumpString = ''' - Head:%s, - IndexCount:%d, - IndexList:%s, - RecycleCountList:%s - '''\ - %( - self.Head.OutputString(), - self.IndexCount, - "...", - "..." - ) - return DumpString - - -m_NAtagCMRecycleAttrFruit=tagCMRecycleAttrFruit() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRecycleAttrFruit.Head.Cmd,m_NAtagCMRecycleAttrFruit.Head.SubCmd))] = m_NAtagCMRecycleAttrFruit - - -#------------------------------------------------------ #A3 03 物品合成 #tagCMItemCompound class tagCMItemCompound(Structure): @@ -4492,58 +4255,6 @@ #------------------------------------------------------ -# A3 2B 一键使用属性果实 #tagCMUseAllAttrFruit - -class tagCMUseAllAttrFruit(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("FuncIndex", c_ubyte), #功能索引 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA3 - self.SubCmd = 0x2B - 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 = 0xA3 - self.SubCmd = 0x2B - self.FuncIndex = 0 - return - - def GetLength(self): - return sizeof(tagCMUseAllAttrFruit) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A3 2B 一键使用属性果实 //tagCMUseAllAttrFruit: - Cmd:%s, - SubCmd:%s, - FuncIndex:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.FuncIndex - ) - return DumpString - - -m_NAtagCMUseAllAttrFruit=tagCMUseAllAttrFruit() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMUseAllAttrFruit.Cmd,m_NAtagCMUseAllAttrFruit.SubCmd))] = m_NAtagCMUseAllAttrFruit - - -#------------------------------------------------------ # A3 23 使用物品 #tagCMUseItems class tagCMUseItemsSelect(Structure): @@ -4588,7 +4299,7 @@ class tagCMUseItems(Structure): Head = tagHead() ItemIndex = 0 #(BYTE ItemIndex)//物品在背包中索引 - UseCnt = 0 #(WORD UseCnt)//使用个数,0表示全部使用 + UseCnt = 0 #(DWORD UseCnt)//使用个数,0表示全部使用 ExData = 0 #(DWORD ExData)//使用扩展值, 默认0, 选择物品宝箱时发送选择的物品ID SelectCount = 0 #(BYTE SelectCount)//指定选择项,当批量使用单个箱子需要同时选中多种选项时使用该值 SelectList = list() #(vector<tagCMUseItemsSelect> SelectList) @@ -4604,7 +4315,7 @@ self.Clear() _pos = self.Head.ReadData(_lpData, _pos) self.ItemIndex,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.UseCnt,_pos = CommFunc.ReadWORD(_lpData, _pos) + self.UseCnt,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.ExData,_pos = CommFunc.ReadDWORD(_lpData, _pos) self.SelectCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) for i in range(self.SelectCount): @@ -4629,7 +4340,7 @@ length = 0 length += self.Head.GetLength() length += 1 - length += 2 + length += 4 length += 4 length += 1 for i in range(self.SelectCount): @@ -4641,7 +4352,7 @@ data = '' data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) data = CommFunc.WriteBYTE(data, self.ItemIndex) - data = CommFunc.WriteWORD(data, self.UseCnt) + data = CommFunc.WriteDWORD(data, self.UseCnt) data = CommFunc.WriteDWORD(data, self.ExData) data = CommFunc.WriteBYTE(data, self.SelectCount) for i in range(self.SelectCount): @@ -5012,58 +4723,6 @@ m_NAtagCGFamilyStoreDel=tagCGFamilyStoreDel() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGFamilyStoreDel.Head.Cmd,m_NAtagCGFamilyStoreDel.Head.SubCmd))] = m_NAtagCGFamilyStoreDel - - -#------------------------------------------------------ -# A4 10 仙盟联赛连胜奖励分配 #tagCGFamilyWarWinRewardAllot - -class tagCGFamilyWarWinRewardAllot(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MemPlayerID", c_int), #分配给的仙盟成员玩家ID - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA4 - 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 = 0xA4 - self.SubCmd = 0x10 - self.MemPlayerID = 0 - return - - def GetLength(self): - return sizeof(tagCGFamilyWarWinRewardAllot) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A4 10 仙盟联赛连胜奖励分配 //tagCGFamilyWarWinRewardAllot: - Cmd:%s, - SubCmd:%s, - MemPlayerID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MemPlayerID - ) - return DumpString - - -m_NAtagCGFamilyWarWinRewardAllot=tagCGFamilyWarWinRewardAllot() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGFamilyWarWinRewardAllot.Cmd,m_NAtagCGFamilyWarWinRewardAllot.SubCmd))] = m_NAtagCGFamilyWarWinRewardAllot #------------------------------------------------------ @@ -5491,58 +5150,6 @@ #------------------------------------------------------ -# A5 30 购买魔魂铜钱经验什么的 #tagCMBuySomething - -class tagCMBuySomething(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Type", c_ubyte), #14铜钱,15经验 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x30 - 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 = 0x30 - self.Type = 0 - return - - def GetLength(self): - return sizeof(tagCMBuySomething) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 30 购买魔魂铜钱经验什么的 //tagCMBuySomething: - Cmd:%s, - SubCmd:%s, - Type:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Type - ) - return DumpString - - -m_NAtagCMBuySomething=tagCMBuySomething() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMBuySomething.Cmd,m_NAtagCMBuySomething.SubCmd))] = m_NAtagCMBuySomething - - -#------------------------------------------------------ #A5 01 坐骑激活 #tagPlayerActivateHorse class tagPlayerActivateHorse(Structure): @@ -5704,124 +5311,6 @@ m_NAtagCMActiveAllEquipAttr=tagCMActiveAllEquipAttr() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMActiveAllEquipAttr.Cmd,m_NAtagCMActiveAllEquipAttr.SubCmd))] = m_NAtagCMActiveAllEquipAttr - - -#------------------------------------------------------ -# A5 49 大师天赋技能加点 #tagCMAddMasterSkillPoint - -class tagCMMasterSkillPoint(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("SkillID", c_int), # 天赋技能ID - ("AddPoint", c_ubyte), # 加的点数 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x49 - 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 = 0x49 - self.SkillID = 0 - self.AddPoint = 0 - return - - def GetLength(self): - return sizeof(tagCMMasterSkillPoint) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 49 大师天赋技能加点 //tagCMAddMasterSkillPoint: - Cmd:%s, - SubCmd:%s, - SkillID:%d, - AddPoint:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.SkillID, - self.AddPoint - ) - return DumpString - - -class tagCMAddMasterSkillPoint(Structure): - Head = tagHead() - SkillCnt = 0 #(BYTE SkillCnt)// 变更技能个数 - AddSkillPointList = list() #(vector<tagCMMasterSkillPoint> AddSkillPointList)// 加的技能点数列表 - data = None - - def __init__(self): - self.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x49 - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - _pos = self.Head.ReadData(_lpData, _pos) - self.SkillCnt,_pos = CommFunc.ReadBYTE(_lpData, _pos) - for i in range(self.SkillCnt): - temAddSkillPointList = tagCMMasterSkillPoint() - _pos = temAddSkillPointList.ReadData(_lpData, _pos) - self.AddSkillPointList.append(temAddSkillPointList) - return _pos - - def Clear(self): - self.Head = tagHead() - self.Head.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x49 - self.SkillCnt = 0 - self.AddSkillPointList = list() - return - - def GetLength(self): - length = 0 - length += self.Head.GetLength() - length += 1 - for i in range(self.SkillCnt): - length += self.AddSkillPointList[i].GetLength() - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) - data = CommFunc.WriteBYTE(data, self.SkillCnt) - for i in range(self.SkillCnt): - data = CommFunc.WriteString(data, self.AddSkillPointList[i].GetLength(), self.AddSkillPointList[i].GetBuffer()) - return data - - def OutputString(self): - DumpString = ''' - Head:%s, - SkillCnt:%d, - AddSkillPointList:%s - '''\ - %( - self.Head.OutputString(), - self.SkillCnt, - "..." - ) - return DumpString - - -m_NAtagCMAddMasterSkillPoint=tagCMAddMasterSkillPoint() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMAddMasterSkillPoint.Head.Cmd,m_NAtagCMAddMasterSkillPoint.Head.SubCmd))] = m_NAtagCMAddMasterSkillPoint #------------------------------------------------------ @@ -7408,62 +6897,6 @@ #------------------------------------------------------ -# A5 48 兑换大师等级经验 #tagCMExchangeMasterEXP - -class tagCMExchangeMasterEXP(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Multiples", c_ubyte), # 20亿经验倍数 - ("ExtraExp", c_int), # 额外附加经验(不超过20亿) - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x48 - 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 = 0x48 - self.Multiples = 0 - self.ExtraExp = 0 - return - - def GetLength(self): - return sizeof(tagCMExchangeMasterEXP) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 48 兑换大师等级经验 //tagCMExchangeMasterEXP: - Cmd:%s, - SubCmd:%s, - Multiples:%d, - ExtraExp:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Multiples, - self.ExtraExp - ) - return DumpString - - -m_NAtagCMExchangeMasterEXP=tagCMExchangeMasterEXP() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMExchangeMasterEXP.Cmd,m_NAtagCMExchangeMasterEXP.SubCmd))] = m_NAtagCMExchangeMasterEXP - - -#------------------------------------------------------ # A5 45 兑换通天令等级经验积分点 #tagCMExchangeTongTianLVPoint class tagCMExchangeTongTianLVPoint(Structure): @@ -7569,220 +7002,6 @@ m_NAtagCMFaQiLVUp=tagCMFaQiLVUp() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFaQiLVUp.Cmd,m_NAtagCMFaQiLVUp.SubCmd))] = m_NAtagCMFaQiLVUp - - -#------------------------------------------------------ -# A5 1C 聚魂合成 #tagCMGatherSoulCompound - -class tagCMGatherSoulCompound(Structure): - Head = tagHead() - Cnt = 0 #(BYTE Cnt) - PackList = list() #(vector<BYTE> PackList)//所在位置 0-背包 1-孔 - IndexList = list() #(vector<WORD> IndexList)//物品索引 - TagItemID = 0 #(DWORD TagItemID)//合成目标物品ID - data = None - - def __init__(self): - self.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x1C - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - _pos = self.Head.ReadData(_lpData, _pos) - self.Cnt,_pos = CommFunc.ReadBYTE(_lpData, _pos) - for i in range(self.Cnt): - value,_pos=CommFunc.ReadBYTE(_lpData,_pos) - self.PackList.append(value) - for i in range(self.Cnt): - value,_pos=CommFunc.ReadWORD(_lpData,_pos) - self.IndexList.append(value) - self.TagItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos) - return _pos - - def Clear(self): - self.Head = tagHead() - self.Head.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x1C - self.Cnt = 0 - self.PackList = list() - self.IndexList = list() - self.TagItemID = 0 - return - - def GetLength(self): - length = 0 - length += self.Head.GetLength() - length += 1 - length += 1 * self.Cnt - length += 2 * self.Cnt - length += 4 - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) - data = CommFunc.WriteBYTE(data, self.Cnt) - for i in range(self.Cnt): - data = CommFunc.WriteBYTE(data, self.PackList[i]) - for i in range(self.Cnt): - data = CommFunc.WriteWORD(data, self.IndexList[i]) - data = CommFunc.WriteDWORD(data, self.TagItemID) - return data - - def OutputString(self): - DumpString = ''' - Head:%s, - Cnt:%d, - PackList:%s, - IndexList:%s, - TagItemID:%d - '''\ - %( - self.Head.OutputString(), - self.Cnt, - "...", - "...", - self.TagItemID - ) - return DumpString - - -m_NAtagCMGatherSoulCompound=tagCMGatherSoulCompound() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGatherSoulCompound.Head.Cmd,m_NAtagCMGatherSoulCompound.Head.SubCmd))] = m_NAtagCMGatherSoulCompound - - -#------------------------------------------------------ -# A5 19 聚魂分解 #tagCMGatherSoulDecompose - -class tagCMGatherSoulDecompose(Structure): - Head = tagHead() - IsAuto = 0 #(BYTE IsAuto)// 是否自动分解 - Count = 0 #(BYTE Count)// 指定批量分解数,最大不超过50个 - PlaceIndexList = list() #(vector<WORD> PlaceIndexList)// 批量分解位置索引列表 - data = None - - def __init__(self): - self.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x19 - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - _pos = self.Head.ReadData(_lpData, _pos) - self.IsAuto,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.Count,_pos = CommFunc.ReadBYTE(_lpData, _pos) - for i in range(self.Count): - value,_pos=CommFunc.ReadWORD(_lpData,_pos) - self.PlaceIndexList.append(value) - return _pos - - def Clear(self): - self.Head = tagHead() - self.Head.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x19 - self.IsAuto = 0 - self.Count = 0 - self.PlaceIndexList = list() - return - - def GetLength(self): - length = 0 - length += self.Head.GetLength() - length += 1 - length += 1 - length += 2 * self.Count - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) - data = CommFunc.WriteBYTE(data, self.IsAuto) - data = CommFunc.WriteBYTE(data, self.Count) - for i in range(self.Count): - data = CommFunc.WriteWORD(data, self.PlaceIndexList[i]) - return data - - def OutputString(self): - DumpString = ''' - Head:%s, - IsAuto:%d, - Count:%d, - PlaceIndexList:%s - '''\ - %( - self.Head.OutputString(), - self.IsAuto, - self.Count, - "..." - ) - return DumpString - - -m_NAtagCMGatherSoulDecompose=tagCMGatherSoulDecompose() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGatherSoulDecompose.Head.Cmd,m_NAtagCMGatherSoulDecompose.Head.SubCmd))] = m_NAtagCMGatherSoulDecompose - - -#------------------------------------------------------ -# A5 18 聚魂升级 #tagCMGatherSoulUp - -class tagCMGatherSoulUp(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("PlaceType", c_ubyte), # 位置类型;0-背包,1-孔 - ("PlaceIndex", c_ushort), # 位置索引 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x18 - 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 = 0x18 - self.PlaceType = 0 - self.PlaceIndex = 0 - return - - def GetLength(self): - return sizeof(tagCMGatherSoulUp) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 18 聚魂升级 //tagCMGatherSoulUp: - Cmd:%s, - SubCmd:%s, - PlaceType:%d, - PlaceIndex:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.PlaceType, - self.PlaceIndex - ) - return DumpString - - -m_NAtagCMGatherSoulUp=tagCMGatherSoulUp() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGatherSoulUp.Cmd,m_NAtagCMGatherSoulUp.SubCmd))] = m_NAtagCMGatherSoulUp #------------------------------------------------------ @@ -8622,110 +7841,6 @@ #------------------------------------------------------ -# A5 15 提升法宝等级 #tagCMMagicWeaponUp - -class tagCMMagicWeaponUp(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MWID", c_int), #法宝ID - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - 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 = 0xA5 - self.SubCmd = 0x15 - self.MWID = 0 - return - - def GetLength(self): - return sizeof(tagCMMagicWeaponUp) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 15 提升法宝等级 //tagCMMagicWeaponUp: - Cmd:%s, - SubCmd:%s, - MWID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MWID - ) - return DumpString - - -m_NAtagCMMagicWeaponUp=tagCMMagicWeaponUp() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMMagicWeaponUp.Cmd,m_NAtagCMMagicWeaponUp.SubCmd))] = m_NAtagCMMagicWeaponUp - - -#------------------------------------------------------ -# A5 0E 开启法宝 #tagCMOpenMagicWeapon - -class tagCMOpenMagicWeapon(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MWID", c_int), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x0E - 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 = 0x0E - self.MWID = 0 - return - - def GetLength(self): - return sizeof(tagCMOpenMagicWeapon) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 0E 开启法宝 //tagCMOpenMagicWeapon: - Cmd:%s, - SubCmd:%s, - MWID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MWID - ) - return DumpString - - -m_NAtagCMOpenMagicWeapon=tagCMOpenMagicWeapon() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMOpenMagicWeapon.Cmd,m_NAtagCMOpenMagicWeapon.SubCmd))] = m_NAtagCMOpenMagicWeapon - - -#------------------------------------------------------ # A5 24 开启渡劫 #tagCMOpenRealmFB class tagCMOpenRealmFB(Structure): @@ -8905,114 +8020,6 @@ m_NAtagCMPlayerGetReward=tagCMPlayerGetReward() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPlayerGetReward.Head.Cmd,m_NAtagCMPlayerGetReward.Head.SubCmd))] = m_NAtagCMPlayerGetReward - - -#------------------------------------------------------ -# A5 76 玩家炼丹 #tagCMPlayerRefine - -class tagCMPlayerRefine(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("AlchemyID", c_int), # 丹药ID - ("AlchemyTimes", c_ushort), # 丹药次数 - ("DoType", c_ubyte), # 0-学习 1-开始炼丹 2-停止炼丹 3-开炉取丹 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x76 - 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 = 0x76 - self.AlchemyID = 0 - self.AlchemyTimes = 0 - self.DoType = 0 - return - - def GetLength(self): - return sizeof(tagCMPlayerRefine) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 76 玩家炼丹 //tagCMPlayerRefine: - Cmd:%s, - SubCmd:%s, - AlchemyID:%d, - AlchemyTimes:%d, - DoType:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.AlchemyID, - self.AlchemyTimes, - self.DoType - ) - return DumpString - - -m_NAtagCMPlayerRefine=tagCMPlayerRefine() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPlayerRefine.Cmd,m_NAtagCMPlayerRefine.SubCmd))] = m_NAtagCMPlayerRefine - - -#------------------------------------------------------ -# A5 14 祈福丹药 #tagCMPrayElixir - -class tagCMPrayElixir(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - 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 = 0xA5 - self.SubCmd = 0x14 - return - - def GetLength(self): - return sizeof(tagCMPrayElixir) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 14 祈福丹药 //tagCMPrayElixir: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCMPrayElixir=tagCMPrayElixir() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMPrayElixir.Cmd,m_NAtagCMPrayElixir.SubCmd))] = m_NAtagCMPrayElixir #------------------------------------------------------ @@ -9468,54 +8475,6 @@ #------------------------------------------------------ -# A5 50 重置大师天赋技能 #tagCMResetMasterSkill - -class tagCMResetMasterSkill(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x50 - 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 = 0x50 - return - - def GetLength(self): - return sizeof(tagCMResetMasterSkill) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 50 重置大师天赋技能 //tagCMResetMasterSkill: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCMResetMasterSkill=tagCMResetMasterSkill() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMResetMasterSkill.Cmd,m_NAtagCMResetMasterSkill.SubCmd))] = m_NAtagCMResetMasterSkill - - -#------------------------------------------------------ # A5 66 符印分解 #tagCMRuneDecompose class tagCMRuneDecompose(Structure): @@ -9841,58 +8800,6 @@ #------------------------------------------------------ -# A5 12 感应法宝 #tagCMThinkMagicWeapon - -class tagCMThinkMagicWeapon(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MWID", c_int), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x12 - 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 = 0x12 - self.MWID = 0 - return - - def GetLength(self): - return sizeof(tagCMThinkMagicWeapon) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 12 感应法宝 //tagCMThinkMagicWeapon: - Cmd:%s, - SubCmd:%s, - MWID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MWID - ) - return DumpString - - -m_NAtagCMThinkMagicWeapon=tagCMThinkMagicWeapon() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMThinkMagicWeapon.Cmd,m_NAtagCMThinkMagicWeapon.SubCmd))] = m_NAtagCMThinkMagicWeapon - - -#------------------------------------------------------ # A5 36 称号升星 #tagCMTitleStarUp class tagCMTitleStarUp(Structure): @@ -10094,178 +9001,6 @@ m_NAtagCMUnlockRuneHole=tagCMUnlockRuneHole() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMUnlockRuneHole.Cmd,m_NAtagCMUnlockRuneHole.SubCmd))] = m_NAtagCMUnlockRuneHole - - -#------------------------------------------------------ -#A5 10 使用新手卡 #tagUseNewGuyCard - -class tagUseNewGuyCard(Structure): - Head = tagHead() - CodeStrLen = 0 #(BYTE CodeStrLen) - CodeStr = "" #(String CodeStr)//size = CodeStrLen - data = None - - def __init__(self): - self.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x10 - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - _pos = self.Head.ReadData(_lpData, _pos) - self.CodeStrLen,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.CodeStr,_pos = CommFunc.ReadString(_lpData, _pos,self.CodeStrLen) - return _pos - - def Clear(self): - self.Head = tagHead() - self.Head.Clear() - self.Head.Cmd = 0xA5 - self.Head.SubCmd = 0x10 - self.CodeStrLen = 0 - self.CodeStr = "" - return - - def GetLength(self): - length = 0 - length += self.Head.GetLength() - length += 1 - length += len(self.CodeStr) - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) - data = CommFunc.WriteBYTE(data, self.CodeStrLen) - data = CommFunc.WriteString(data, self.CodeStrLen, self.CodeStr) - return data - - def OutputString(self): - DumpString = ''' - Head:%s, - CodeStrLen:%d, - CodeStr:%s - '''\ - %( - self.Head.OutputString(), - self.CodeStrLen, - self.CodeStr - ) - return DumpString - - -m_NAtagUseNewGuyCard=tagUseNewGuyCard() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagUseNewGuyCard.Head.Cmd,m_NAtagUseNewGuyCard.Head.SubCmd))] = m_NAtagUseNewGuyCard - - -#------------------------------------------------------ -# A5 26 寻访仙域 #tagCMVisitFairyDomain - -class tagCMVisitFairyDomain(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Type", c_ubyte), #0-开始寻访 1-结束寻访 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x26 - 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 = 0x26 - self.Type = 0 - return - - def GetLength(self): - return sizeof(tagCMVisitFairyDomain) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 26 寻访仙域 //tagCMVisitFairyDomain: - Cmd:%s, - SubCmd:%s, - Type:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Type - ) - return DumpString - - -m_NAtagCMVisitFairyDomain=tagCMVisitFairyDomain() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMVisitFairyDomain.Cmd,m_NAtagCMVisitFairyDomain.SubCmd))] = m_NAtagCMVisitFairyDomain - - -#------------------------------------------------------ -# A5 1D 法宝佩戴 #tagCMWearMagicWeapon - -class tagCMWearMagicWeapon(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MWID", c_int), #法宝ID - ("State", c_ubyte), #0-卸下 1-佩戴 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA5 - self.SubCmd = 0x1D - 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 = 0x1D - self.MWID = 0 - self.State = 0 - return - - def GetLength(self): - return sizeof(tagCMWearMagicWeapon) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A5 1D 法宝佩戴 //tagCMWearMagicWeapon: - Cmd:%s, - SubCmd:%s, - MWID:%d, - State:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MWID, - self.State - ) - return DumpString - - -m_NAtagCMWearMagicWeapon=tagCMWearMagicWeapon() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMWearMagicWeapon.Cmd,m_NAtagCMWearMagicWeapon.SubCmd))] = m_NAtagCMWearMagicWeapon #------------------------------------------------------ @@ -11897,110 +10632,6 @@ #------------------------------------------------------ -# A8 04 购买VIP礼包 #tagCMBuyVIPItem - -class tagCMBuyVIPItem(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("VIPLV", c_ubyte), # VIP等级 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA8 - 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 = 0xA8 - self.SubCmd = 0x04 - self.VIPLV = 0 - return - - def GetLength(self): - return sizeof(tagCMBuyVIPItem) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A8 04 购买VIP礼包 //tagCMBuyVIPItem: - Cmd:%s, - SubCmd:%s, - VIPLV:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.VIPLV - ) - return DumpString - - -m_NAtagCMBuyVIPItem=tagCMBuyVIPItem() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMBuyVIPItem.Cmd,m_NAtagCMBuyVIPItem.SubCmd))] = m_NAtagCMBuyVIPItem - - -#------------------------------------------------------ -#A8 01 购买VIP时间 #tagCMBuyVipLV - -class tagCMBuyVipLV(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("VipType", c_ubyte), # VIP时间类型 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA8 - 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 = 0xA8 - self.SubCmd = 0x01 - self.VipType = 0 - return - - def GetLength(self): - return sizeof(tagCMBuyVipLV) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''//A8 01 购买VIP时间 //tagCMBuyVipLV: - Cmd:%s, - SubCmd:%s, - VipType:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.VipType - ) - return DumpString - - -m_NAtagCMBuyVipLV=tagCMBuyVipLV() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMBuyVipLV.Cmd,m_NAtagCMBuyVipLV.SubCmd))] = m_NAtagCMBuyVipLV - - -#------------------------------------------------------ # A8 03 开通贵族 #tagCMOpenNoble class tagCMOpenNoble(Structure): @@ -12098,58 +10729,6 @@ m_NAtagCMQueryRecharge=tagCMQueryRecharge() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMQueryRecharge.Cmd,m_NAtagCMQueryRecharge.SubCmd))] = m_NAtagCMQueryRecharge - - -#------------------------------------------------------ -# A8 05 VIP杀怪等级信息同步开关 #tagCMVIPKillNPCLVInfoSwitch - -class tagCMVIPKillNPCLVInfoSwitch(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("IsOn", c_ubyte), # 是否开启同步 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xA8 - self.SubCmd = 0x05 - 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 = 0xA8 - self.SubCmd = 0x05 - self.IsOn = 0 - return - - def GetLength(self): - return sizeof(tagCMVIPKillNPCLVInfoSwitch) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// A8 05 VIP杀怪等级信息同步开关 //tagCMVIPKillNPCLVInfoSwitch: - Cmd:%s, - SubCmd:%s, - IsOn:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.IsOn - ) - return DumpString - - -m_NAtagCMVIPKillNPCLVInfoSwitch=tagCMVIPKillNPCLVInfoSwitch() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMVIPKillNPCLVInfoSwitch.Cmd,m_NAtagCMVIPKillNPCLVInfoSwitch.SubCmd))] = m_NAtagCMVIPKillNPCLVInfoSwitch #------------------------------------------------------ @@ -14345,62 +12924,6 @@ #------------------------------------------------------ -# AB 03 仙魔之争押注 #tagCMXMZZBet - -class tagCMXMZZBet(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("BetIndex", c_ubyte), # 押注索引 - ("BetResult", c_ubyte), # 结果 1-仙族赢 2-魔族赢 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xAB - self.SubCmd = 0x03 - 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 = 0xAB - self.SubCmd = 0x03 - self.BetIndex = 0 - self.BetResult = 0 - return - - def GetLength(self): - return sizeof(tagCMXMZZBet) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// AB 03 仙魔之争押注 //tagCMXMZZBet: - Cmd:%s, - SubCmd:%s, - BetIndex:%d, - BetResult:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.BetIndex, - self.BetResult - ) - return DumpString - - -m_NAtagCMXMZZBet=tagCMXMZZBet() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMXMZZBet.Cmd,m_NAtagCMXMZZBet.SubCmd))] = m_NAtagCMXMZZBet - - -#------------------------------------------------------ # AB 11 开服活动奖励 #tagCMOpenServerCampaignAward class tagCMOpenServerCampaignAward(Structure): @@ -14510,228 +13033,6 @@ m_NAtagCGCallupFamilyMemberToBoss=tagCGCallupFamilyMemberToBoss() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGCallupFamilyMemberToBoss.Cmd,m_NAtagCGCallupFamilyMemberToBoss.SubCmd))] = m_NAtagCGCallupFamilyMemberToBoss - - -#------------------------------------------------------ -# AC 02 仙魔之争战斗结束 #tagCGXMZZOver - -class tagCGXMZZOver(Structure): - Head = tagHead() - IsWin = 0 #(BYTE IsWin)//是否胜利 - IsEnd = 0 #(BYTE IsEnd)//是否结束 - HPPer = 0 #(BYTE HPPer)//剩余血量百分比 - VSName = "" #(char VSName[33])//对手名字 - data = None - - def __init__(self): - self.Clear() - self.Head.Cmd = 0xAC - self.Head.SubCmd = 0x02 - return - - def ReadData(self, _lpData, _pos=0, _Len=0): - self.Clear() - _pos = self.Head.ReadData(_lpData, _pos) - self.IsWin,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.IsEnd,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.HPPer,_pos = CommFunc.ReadBYTE(_lpData, _pos) - self.VSName,_pos = CommFunc.ReadString(_lpData, _pos,33) - return _pos - - def Clear(self): - self.Head = tagHead() - self.Head.Clear() - self.Head.Cmd = 0xAC - self.Head.SubCmd = 0x02 - self.IsWin = 0 - self.IsEnd = 0 - self.HPPer = 0 - self.VSName = "" - return - - def GetLength(self): - length = 0 - length += self.Head.GetLength() - length += 1 - length += 1 - length += 1 - length += 33 - - return length - - def GetBuffer(self): - data = '' - data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) - data = CommFunc.WriteBYTE(data, self.IsWin) - data = CommFunc.WriteBYTE(data, self.IsEnd) - data = CommFunc.WriteBYTE(data, self.HPPer) - data = CommFunc.WriteString(data, 33, self.VSName) - return data - - def OutputString(self): - DumpString = ''' - Head:%s, - IsWin:%d, - IsEnd:%d, - HPPer:%d, - VSName:%s - '''\ - %( - self.Head.OutputString(), - self.IsWin, - self.IsEnd, - self.HPPer, - self.VSName - ) - return DumpString - - -m_NAtagCGXMZZOver=tagCGXMZZOver() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGXMZZOver.Head.Cmd,m_NAtagCGXMZZOver.Head.SubCmd))] = m_NAtagCGXMZZOver - - -#------------------------------------------------------ -# AC 01 仙魔之争报名 #tagCGJoinXMZZ - -class tagCGJoinXMZZ(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xAC - 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 = 0xAC - self.SubCmd = 0x01 - return - - def GetLength(self): - return sizeof(tagCGJoinXMZZ) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// AC 01 仙魔之争报名 //tagCGJoinXMZZ: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCGJoinXMZZ=tagCGJoinXMZZ() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGJoinXMZZ.Cmd,m_NAtagCGJoinXMZZ.SubCmd))] = m_NAtagCGJoinXMZZ - - -#------------------------------------------------------ -# AC 04 查询仙盟抢Boss所有Boss当前进度 #tagCGQueryAllFamilyBossHurt - -class tagCGQueryAllFamilyBossHurt(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xAC - 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 = 0xAC - self.SubCmd = 0x04 - return - - def GetLength(self): - return sizeof(tagCGQueryAllFamilyBossHurt) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// AC 04 查询仙盟抢Boss所有Boss当前进度 //tagCGQueryAllFamilyBossHurt: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCGQueryAllFamilyBossHurt=tagCGQueryAllFamilyBossHurt() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGQueryAllFamilyBossHurt.Cmd,m_NAtagCGQueryAllFamilyBossHurt.SubCmd))] = m_NAtagCGQueryAllFamilyBossHurt - - -#------------------------------------------------------ -# AC 03 仙魔之争信息查询 #tagCGXMZZInfoQuery - -class tagCGXMZZInfoQuery(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xAC - self.SubCmd = 0x03 - 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 = 0xAC - self.SubCmd = 0x03 - return - - def GetLength(self): - return sizeof(tagCGXMZZInfoQuery) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// AC 03 仙魔之争信息查询 //tagCGXMZZInfoQuery: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCGXMZZInfoQuery=tagCGXMZZInfoQuery() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGXMZZInfoQuery.Cmd,m_NAtagCGXMZZInfoQuery.SubCmd))] = m_NAtagCGXMZZInfoQuery #------------------------------------------------------ @@ -15624,118 +13925,6 @@ #------------------------------------------------------ -# B0 10 请求协助Boss #tagCMRequestAssistBoss - -class tagCMRequestAssistBoss(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("ObjID", c_int), - ("NPCID", c_int), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB0 - 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 = 0xB0 - self.SubCmd = 0x10 - self.ObjID = 0 - self.NPCID = 0 - return - - def GetLength(self): - return sizeof(tagCMRequestAssistBoss) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B0 10 请求协助Boss //tagCMRequestAssistBoss: - Cmd:%s, - SubCmd:%s, - ObjID:%d, - NPCID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.ObjID, - self.NPCID - ) - return DumpString - - -m_NAtagCMRequestAssistBoss=tagCMRequestAssistBoss() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRequestAssistBoss.Cmd,m_NAtagCMRequestAssistBoss.SubCmd))] = m_NAtagCMRequestAssistBoss - - -#------------------------------------------------------ -# B0 11 请求协助组队副本 #tagCMRequestAssistTeamFB - -class tagCMRequestAssistTeamFB(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MapID", c_ushort), - ("LineID", c_ushort), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB0 - 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 = 0xB0 - self.SubCmd = 0x11 - self.MapID = 0 - self.LineID = 0 - return - - def GetLength(self): - return sizeof(tagCMRequestAssistTeamFB) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B0 11 请求协助组队副本 //tagCMRequestAssistTeamFB: - Cmd:%s, - SubCmd:%s, - MapID:%d, - LineID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MapID, - self.LineID - ) - return DumpString - - -m_NAtagCMRequestAssistTeamFB=tagCMRequestAssistTeamFB() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMRequestAssistTeamFB.Cmd,m_NAtagCMRequestAssistTeamFB.SubCmd))] = m_NAtagCMRequestAssistTeamFB - - -#------------------------------------------------------ # B0 12 开始协助Boss #tagCGStartAssistBoss class tagCGStartAssistBoss(Structure): @@ -16205,162 +14394,6 @@ #------------------------------------------------------ -# B1 06 助战召唤 #tagCMHelpBattleCall - -class tagCMHelpBattleCall(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("IsOneKeyCall", c_ubyte), # 是否一键召唤 - ("PlayerID", c_int), # 召唤的玩家ID,大于1小于100代表机器人 - ("IsGoldCall", c_ubyte), # 是否仙玉召唤 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB1 - 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 = 0xB1 - self.SubCmd = 0x06 - self.IsOneKeyCall = 0 - self.PlayerID = 0 - self.IsGoldCall = 0 - return - - def GetLength(self): - return sizeof(tagCMHelpBattleCall) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B1 06 助战召唤 //tagCMHelpBattleCall: - Cmd:%s, - SubCmd:%s, - IsOneKeyCall:%d, - PlayerID:%d, - IsGoldCall:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.IsOneKeyCall, - self.PlayerID, - self.IsGoldCall - ) - return DumpString - - -m_NAtagCMHelpBattleCall=tagCMHelpBattleCall() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMHelpBattleCall.Cmd,m_NAtagCMHelpBattleCall.SubCmd))] = m_NAtagCMHelpBattleCall - - -#------------------------------------------------------ -# B1 05 助战登记 #tagCMHelpBattleCheckIn - -class tagCMHelpBattleCheckIn(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB1 - self.SubCmd = 0x05 - 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 = 0x05 - return - - def GetLength(self): - return sizeof(tagCMHelpBattleCheckIn) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B1 05 助战登记 //tagCMHelpBattleCheckIn: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCMHelpBattleCheckIn=tagCMHelpBattleCheckIn() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMHelpBattleCheckIn.Cmd,m_NAtagCMHelpBattleCheckIn.SubCmd))] = m_NAtagCMHelpBattleCheckIn - - -#------------------------------------------------------ -# B1 07 助战刷新 #tagCMHelpBattleRefresh - -class tagCMHelpBattleRefresh(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB1 - 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 = 0xB1 - self.SubCmd = 0x07 - return - - def GetLength(self): - return sizeof(tagCMHelpBattleRefresh) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B1 07 助战刷新 //tagCMHelpBattleRefresh: - Cmd:%s, - SubCmd:%s - '''\ - %( - self.Cmd, - self.SubCmd - ) - return DumpString - - -m_NAtagCMHelpBattleRefresh=tagCMHelpBattleRefresh() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMHelpBattleRefresh.Cmd,m_NAtagCMHelpBattleRefresh.SubCmd))] = m_NAtagCMHelpBattleRefresh - - -#------------------------------------------------------ # B1 02 领取多倍副本奖励 #tagCMGetMultiFBPrize class tagCMGetMultiFBPrize(Structure): @@ -16418,58 +14451,6 @@ m_NAtagCMGetMultiFBPrize=tagCMGetMultiFBPrize() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGetMultiFBPrize.Cmd,m_NAtagCMGetMultiFBPrize.SubCmd))] = m_NAtagCMGetMultiFBPrize - - -#------------------------------------------------------ -# B1 03 设置封魔坛多倍击杀 #tagCMSetFMTDouble - -class tagCMSetFMTDouble(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("IsDouble", c_ubyte), #是否双倍 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB1 - self.SubCmd = 0x03 - 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 = 0x03 - self.IsDouble = 0 - return - - def GetLength(self): - return sizeof(tagCMSetFMTDouble) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B1 03 设置封魔坛多倍击杀 //tagCMSetFMTDouble: - Cmd:%s, - SubCmd:%s, - IsDouble:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.IsDouble - ) - return DumpString - - -m_NAtagCMSetFMTDouble=tagCMSetFMTDouble() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMSetFMTDouble.Cmd,m_NAtagCMSetFMTDouble.SubCmd))] = m_NAtagCMSetFMTDouble #------------------------------------------------------ @@ -16930,62 +14911,6 @@ m_NAtagCMFaceStarUP=tagCMFaceStarUP() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMFaceStarUP.Cmd,m_NAtagCMFaceStarUP.SubCmd))] = m_NAtagCMFaceStarUP - - -#------------------------------------------------------ -# B2 25 新聚魂操作 #tagCMGatherTheSoulOP - -class tagCMGatherTheSoulOP(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("OpType", c_ubyte), # 0-激活升级; 1-穿戴替换; 2-卸下 - ("SoulID", c_int), # 聚魂ID;当操作升级时,如果为0代表一键升级所有可升级的 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB2 - 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 = 0xB2 - self.SubCmd = 0x25 - self.OpType = 0 - self.SoulID = 0 - return - - def GetLength(self): - return sizeof(tagCMGatherTheSoulOP) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B2 25 新聚魂操作 //tagCMGatherTheSoulOP: - Cmd:%s, - SubCmd:%s, - OpType:%d, - SoulID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.OpType, - self.SoulID - ) - return DumpString - - -m_NAtagCMGatherTheSoulOP=tagCMGatherTheSoulOP() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMGatherTheSoulOP.Cmd,m_NAtagCMGatherTheSoulOP.SubCmd))] = m_NAtagCMGatherTheSoulOP #------------------------------------------------------ @@ -17484,6 +15409,73 @@ #------------------------------------------------------ +# B2 40 武将遣散 #tagCSHeroDismiss + +class tagCSHeroDismiss(Structure): + Head = tagHead() + Count = 0 #(WORD Count) + ItemIndexList = list() #(vector<WORD> ItemIndexList)// 武将物品所在武将背包位置索引列表 + data = None + + def __init__(self): + self.Clear() + self.Head.Cmd = 0xB2 + self.Head.SubCmd = 0x40 + return + + def ReadData(self, _lpData, _pos=0, _Len=0): + self.Clear() + _pos = self.Head.ReadData(_lpData, _pos) + self.Count,_pos = CommFunc.ReadWORD(_lpData, _pos) + for i in range(self.Count): + 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 = 0x40 + self.Count = 0 + self.ItemIndexList = list() + return + + def GetLength(self): + length = 0 + length += self.Head.GetLength() + length += 2 + length += 2 * self.Count + + return length + + def GetBuffer(self): + data = '' + data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) + data = CommFunc.WriteWORD(data, self.Count) + for i in range(self.Count): + data = CommFunc.WriteWORD(data, self.ItemIndexList[i]) + return data + + def OutputString(self): + DumpString = ''' + Head:%s, + Count:%d, + ItemIndexList:%s + '''\ + %( + self.Head.OutputString(), + self.Count, + "..." + ) + return DumpString + + +m_NAtagCSHeroDismiss=tagCSHeroDismiss() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSHeroDismiss.Head.Cmd,m_NAtagCSHeroDismiss.Head.SubCmd))] = m_NAtagCSHeroDismiss + + +#------------------------------------------------------ # B2 38 武将锁定 #tagCSHeroLock class tagCSHeroLock(Structure): @@ -17589,6 +15581,58 @@ m_NAtagCSHeroLVUP=tagCSHeroLVUP() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSHeroLVUP.Cmd,m_NAtagCSHeroLVUP.SubCmd))] = m_NAtagCSHeroLVUP + + +#------------------------------------------------------ +# B2 39 武将重生 #tagCSHeroRebirth + +class tagCSHeroRebirth(Structure): + _pack_ = 1 + _fields_ = [ + ("Cmd", c_ubyte), + ("SubCmd", c_ubyte), + ("ItemIndex", c_ushort), #武将物品所在武将背包位置索引 + ] + + def __init__(self): + self.Clear() + self.Cmd = 0xB2 + self.SubCmd = 0x39 + 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 = 0x39 + self.ItemIndex = 0 + return + + def GetLength(self): + return sizeof(tagCSHeroRebirth) + + def GetBuffer(self): + return string_at(addressof(self), self.GetLength()) + + def OutputString(self): + DumpString = '''// B2 39 武将重生 //tagCSHeroRebirth: + Cmd:%s, + SubCmd:%s, + ItemIndex:%d + '''\ + %( + self.Cmd, + self.SubCmd, + self.ItemIndex + ) + return DumpString + + +m_NAtagCSHeroRebirth=tagCSHeroRebirth() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSHeroRebirth.Cmd,m_NAtagCSHeroRebirth.SubCmd))] = m_NAtagCSHeroRebirth #------------------------------------------------------ @@ -19312,70 +17356,6 @@ m_NAtagCSMainFightReq=tagCSMainFightReq() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCSMainFightReq.Cmd,m_NAtagCSMainFightReq.SubCmd))] = m_NAtagCSMainFightReq - - -#------------------------------------------------------ -# B4 11 镜像战斗 #tagCMMirrorFight - -class tagCMMirrorFight(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("MapID", c_int), # 自定义地图ID,如竞技场等 - ("FuncLineID", c_ushort), - ("TagPlayeID", c_int), # 目标玩家ID,支持跨服玩家ID - ("CmdType", c_ubyte), # 命令类型: 0-创建战斗;1-开始战斗;2-战斗中跳过;3-不创建战斗直接得结果 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB4 - 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 = 0xB4 - self.SubCmd = 0x11 - self.MapID = 0 - self.FuncLineID = 0 - self.TagPlayeID = 0 - self.CmdType = 0 - return - - def GetLength(self): - return sizeof(tagCMMirrorFight) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B4 11 镜像战斗 //tagCMMirrorFight: - Cmd:%s, - SubCmd:%s, - MapID:%d, - FuncLineID:%d, - TagPlayeID:%d, - CmdType:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.MapID, - self.FuncLineID, - self.TagPlayeID, - self.CmdType - ) - return DumpString - - -m_NAtagCMMirrorFight=tagCMMirrorFight() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMMirrorFight.Cmd,m_NAtagCMMirrorFight.SubCmd))] = m_NAtagCMMirrorFight #------------------------------------------------------ @@ -21149,62 +19129,6 @@ #------------------------------------------------------ -# B9 04 修改队伍相关审核状态 #tagCMChangeTeamCheckState - -class tagCMChangeTeamCheckState(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("JoinReqCheck", c_ubyte), #入队申请是否需要审核, 0否1是, 默认否, 即自动接受 - ("InviteCheck", c_ubyte), #组队邀请是否需要审核, 0否1是, 默认否, 即自动接受 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB9 - 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 = 0xB9 - self.SubCmd = 0x04 - self.JoinReqCheck = 0 - self.InviteCheck = 0 - return - - def GetLength(self): - return sizeof(tagCMChangeTeamCheckState) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B9 04 修改队伍相关审核状态 //tagCMChangeTeamCheckState: - Cmd:%s, - SubCmd:%s, - JoinReqCheck:%d, - InviteCheck:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.JoinReqCheck, - self.InviteCheck - ) - return DumpString - - -m_NAtagCMChangeTeamCheckState=tagCMChangeTeamCheckState() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChangeTeamCheckState.Cmd,m_NAtagCMChangeTeamCheckState.SubCmd))] = m_NAtagCMChangeTeamCheckState - - -#------------------------------------------------------ # B9 03 修改队伍信息 #tagCGChangeTeamInfo class tagCGChangeTeamInfo(Structure): @@ -21888,58 +19812,6 @@ #------------------------------------------------------ -# B9 10 查询在线队员对应功能数据 #tagCGQueryTeamMemFuncData - -class tagCGQueryTeamMemFuncData(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("TeamMemFuncType", c_ubyte), # 查询队员的功能数据类型 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xB9 - 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 = 0xB9 - self.SubCmd = 0x10 - self.TeamMemFuncType = 0 - return - - def GetLength(self): - return sizeof(tagCGQueryTeamMemFuncData) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// B9 10 查询在线队员对应功能数据 //tagCGQueryTeamMemFuncData: - Cmd:%s, - SubCmd:%s, - TeamMemFuncType:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.TeamMemFuncType - ) - return DumpString - - -m_NAtagCGQueryTeamMemFuncData=tagCGQueryTeamMemFuncData() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGQueryTeamMemFuncData.Cmd,m_NAtagCGQueryTeamMemFuncData.SubCmd))] = m_NAtagCGQueryTeamMemFuncData - - -#------------------------------------------------------ # B9 11 请求加入队伍 #tagCGRequestJoinTeam class tagCGRequestJoinTeam(Structure): @@ -22277,186 +20149,6 @@ m_NAtagCGChampionshipOfficialLeave=tagCGChampionshipOfficialLeave() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGChampionshipOfficialLeave.Cmd,m_NAtagCGChampionshipOfficialLeave.SubCmd))] = m_NAtagCGChampionshipOfficialLeave - - -#------------------------------------------------------ -# C0 09 跨服战场召集场次修改 #tagCGCrossBattlefieldCallChange - -class tagCGCrossBattlefieldCallChange(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Hour", c_ubyte), #战场开启时 - ("Minute", c_ubyte), #战场开启分 - ("ServerOnly", c_ubyte), #是否仅本服玩家可加入,0-否,1-是 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xC0 - 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 = 0xC0 - self.SubCmd = 0x09 - self.Hour = 0 - self.Minute = 0 - self.ServerOnly = 0 - return - - def GetLength(self): - return sizeof(tagCGCrossBattlefieldCallChange) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// C0 09 跨服战场召集场次修改 //tagCGCrossBattlefieldCallChange: - Cmd:%s, - SubCmd:%s, - Hour:%d, - Minute:%d, - ServerOnly:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Hour, - self.Minute, - self.ServerOnly - ) - return DumpString - - -m_NAtagCGCrossBattlefieldCallChange=tagCGCrossBattlefieldCallChange() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGCrossBattlefieldCallChange.Cmd,m_NAtagCGCrossBattlefieldCallChange.SubCmd))] = m_NAtagCGCrossBattlefieldCallChange - - -#------------------------------------------------------ -# C0 08 跨服战场召集场次踢人 #tagCGCrossBattlefieldCallKick - -class tagCGCrossBattlefieldCallKick(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Hour", c_ubyte), #战场开启时 - ("Minute", c_ubyte), #战场开启分 - ("TagPlayerID", c_int), #目标玩家ID,即要被踢出去的玩家ID - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xC0 - 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 = 0xC0 - self.SubCmd = 0x08 - self.Hour = 0 - self.Minute = 0 - self.TagPlayerID = 0 - return - - def GetLength(self): - return sizeof(tagCGCrossBattlefieldCallKick) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// C0 08 跨服战场召集场次踢人 //tagCGCrossBattlefieldCallKick: - Cmd:%s, - SubCmd:%s, - Hour:%d, - Minute:%d, - TagPlayerID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Hour, - self.Minute, - self.TagPlayerID - ) - return DumpString - - -m_NAtagCGCrossBattlefieldCallKick=tagCGCrossBattlefieldCallKick() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGCrossBattlefieldCallKick.Cmd,m_NAtagCGCrossBattlefieldCallKick.SubCmd))] = m_NAtagCGCrossBattlefieldCallKick - - -#------------------------------------------------------ -# C0 07 跨服战场加入召集场次 #tagCGCrossBattlefieldJoinByCall - -class tagCGCrossBattlefieldJoinByCall(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Hour", c_ubyte), #战场开启时 - ("Minute", c_ubyte), #战场开启分 - ("BuyPlayerID", c_int), #加入目标玩家的召集队伍,即购买召集场的玩家ID - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xC0 - 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 = 0xC0 - self.SubCmd = 0x07 - self.Hour = 0 - self.Minute = 0 - self.BuyPlayerID = 0 - return - - def GetLength(self): - return sizeof(tagCGCrossBattlefieldJoinByCall) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// C0 07 跨服战场加入召集场次 //tagCGCrossBattlefieldJoinByCall: - Cmd:%s, - SubCmd:%s, - Hour:%d, - Minute:%d, - BuyPlayerID:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Hour, - self.Minute, - self.BuyPlayerID - ) - return DumpString - - -m_NAtagCGCrossBattlefieldJoinByCall=tagCGCrossBattlefieldJoinByCall() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCGCrossBattlefieldJoinByCall.Cmd,m_NAtagCGCrossBattlefieldJoinByCall.SubCmd))] = m_NAtagCGCrossBattlefieldJoinByCall #------------------------------------------------------ @@ -23105,70 +20797,6 @@ m_NAtagCMChampionshipWorship=tagCMChampionshipWorship() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMChampionshipWorship.Cmd,m_NAtagCMChampionshipWorship.SubCmd))] = m_NAtagCMChampionshipWorship - - -#------------------------------------------------------ -# C1 09 跨服战场购买开启场次 #tagCMCrossBattlefieldBuyOpen - -class tagCMCrossBattlefieldBuyOpen(Structure): - _pack_ = 1 - _fields_ = [ - ("Cmd", c_ubyte), - ("SubCmd", c_ubyte), - ("Hour", c_ubyte), #战场开启时 - ("Minute", c_ubyte), #战场开启分 - ("Faction", c_ubyte), #阵营 1-红;2-蓝 - ("ServerOnly", c_ubyte), #是否仅本服玩家可加入,0-否,1-是 - ] - - def __init__(self): - self.Clear() - self.Cmd = 0xC1 - 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 = 0xC1 - self.SubCmd = 0x09 - self.Hour = 0 - self.Minute = 0 - self.Faction = 0 - self.ServerOnly = 0 - return - - def GetLength(self): - return sizeof(tagCMCrossBattlefieldBuyOpen) - - def GetBuffer(self): - return string_at(addressof(self), self.GetLength()) - - def OutputString(self): - DumpString = '''// C1 09 跨服战场购买开启场次 //tagCMCrossBattlefieldBuyOpen: - Cmd:%s, - SubCmd:%s, - Hour:%d, - Minute:%d, - Faction:%d, - ServerOnly:%d - '''\ - %( - self.Cmd, - self.SubCmd, - self.Hour, - self.Minute, - self.Faction, - self.ServerOnly - ) - return DumpString - - -m_NAtagCMCrossBattlefieldBuyOpen=tagCMCrossBattlefieldBuyOpen() -ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMCrossBattlefieldBuyOpen.Cmd,m_NAtagCMCrossBattlefieldBuyOpen.SubCmd))] = m_NAtagCMCrossBattlefieldBuyOpen #------------------------------------------------------ -- Gitblit v1.8.0