From caace426c6cb047cf1b734486615111853225771 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 17 六月 2021 18:31:35 +0800 Subject: [PATCH] 8988 【主干】【BT2】【BT2-1.100.1】【后端】神装进阶功能 --- ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 81 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 81 insertions(+), 0 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py index 78a2257..8f401d7 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py @@ -15427,6 +15427,87 @@ #------------------------------------------------------ +# A3 C4 装备神装拆解结果 #tagMCEquipDecomposeRet + +class tagMCEquipDecomposeRet(Structure): + Head = tagHead() + DecomposeEquipIDCount = 0 #(BYTE DecomposeEquipIDCount)// 已分解的装备个数 + DecomposeEquipIDList = list() #(vector<DWORD> DecomposeEquipIDList)// 已分解的神装装备ID列表 + GetItemLen = 0 #(WORD GetItemLen) + GetItemData = "" #(String GetItemData)// 获得物品信息 [[itemID,itemCount,isBind], [或itemID,itemCount,isBind,isAppoint], {或物品信息字典}, ...] + data = None + + def __init__(self): + self.Clear() + self.Head.Cmd = 0xA3 + self.Head.SubCmd = 0xC4 + return + + def ReadData(self, _lpData, _pos=0, _Len=0): + self.Clear() + _pos = self.Head.ReadData(_lpData, _pos) + self.DecomposeEquipIDCount,_pos = CommFunc.ReadBYTE(_lpData, _pos) + for i in range(self.DecomposeEquipIDCount): + value,_pos=CommFunc.ReadDWORD(_lpData,_pos) + self.DecomposeEquipIDList.append(value) + self.GetItemLen,_pos = CommFunc.ReadWORD(_lpData, _pos) + self.GetItemData,_pos = CommFunc.ReadString(_lpData, _pos,self.GetItemLen) + return _pos + + def Clear(self): + self.Head = tagHead() + self.Head.Clear() + self.Head.Cmd = 0xA3 + self.Head.SubCmd = 0xC4 + self.DecomposeEquipIDCount = 0 + self.DecomposeEquipIDList = list() + self.GetItemLen = 0 + self.GetItemData = "" + return + + def GetLength(self): + length = 0 + length += self.Head.GetLength() + length += 1 + length += 4 * self.DecomposeEquipIDCount + length += 2 + length += len(self.GetItemData) + + return length + + def GetBuffer(self): + data = '' + data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer()) + data = CommFunc.WriteBYTE(data, self.DecomposeEquipIDCount) + for i in range(self.DecomposeEquipIDCount): + data = CommFunc.WriteDWORD(data, self.DecomposeEquipIDList[i]) + data = CommFunc.WriteWORD(data, self.GetItemLen) + data = CommFunc.WriteString(data, self.GetItemLen, self.GetItemData) + return data + + def OutputString(self): + DumpString = ''' + Head:%s, + DecomposeEquipIDCount:%d, + DecomposeEquipIDList:%s, + GetItemLen:%d, + GetItemData:%s + '''\ + %( + self.Head.OutputString(), + self.DecomposeEquipIDCount, + "...", + self.GetItemLen, + self.GetItemData + ) + return DumpString + + +m_NAtagMCEquipDecomposeRet=tagMCEquipDecomposeRet() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCEquipDecomposeRet.Head.Cmd,m_NAtagMCEquipDecomposeRet.Head.SubCmd))] = m_NAtagMCEquipDecomposeRet + + +#------------------------------------------------------ # A3 B1 装备部位星数信息 #tagMCEquipPartStarInfo class tagMCEquipPartStar(Structure): -- Gitblit v1.8.0