From 9e65b1227144d715b48bdac99290a292108bec53 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 12 一月 2023 17:09:19 +0800 Subject: [PATCH] 9765 【BT8】【后端】神通 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 119 insertions(+), 0 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py index 4a1280f..a5935be 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetPack.py @@ -18158,6 +18158,125 @@ #------------------------------------------------------ +# B2 19 神通升级 #tagCMShentongLVUp + +class tagCMShentongLVUp(Structure): + _pack_ = 1 + _fields_ = [ + ("Cmd", c_ubyte), + ("SubCmd", c_ubyte), + ("ShentongID", c_ubyte), + ] + + def __init__(self): + self.Clear() + self.Cmd = 0xB2 + self.SubCmd = 0x19 + return + + def ReadData(self, stringData, _pos=0, _len=0): + self.Clear() + memmove(addressof(self), stringData[_pos:], self.GetLength()) + return _pos + self.GetLength() + + def Clear(self): + self.Cmd = 0xB2 + self.SubCmd = 0x19 + self.ShentongID = 0 + return + + def GetLength(self): + return sizeof(tagCMShentongLVUp) + + def GetBuffer(self): + return string_at(addressof(self), self.GetLength()) + + def OutputString(self): + DumpString = '''// B2 19 神通升级 //tagCMShentongLVUp: + Cmd:%s, + SubCmd:%s, + ShentongID:%d + '''\ + %( + self.Cmd, + self.SubCmd, + self.ShentongID + ) + return DumpString + + +m_NAtagCMShentongLVUp=tagCMShentongLVUp() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMShentongLVUp.Cmd,m_NAtagCMShentongLVUp.SubCmd))] = m_NAtagCMShentongLVUp + + +#------------------------------------------------------ +# B2 20 神通技能设置 #tagCMShentongSkillSet + +class tagCMShentongSkillSet(Structure): + Head = tagHead() + Count = 0 #(BYTE Count) + SkillIDList = list() #(vector<DWORD> SkillIDList) + data = None + + def __init__(self): + self.Clear() + self.Head.Cmd = 0xB2 + self.Head.SubCmd = 0x20 + 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.ReadDWORD(_lpData,_pos) + self.SkillIDList.append(value) + return _pos + + def Clear(self): + self.Head = tagHead() + self.Head.Clear() + self.Head.Cmd = 0xB2 + self.Head.SubCmd = 0x20 + self.Count = 0 + self.SkillIDList = list() + return + + def GetLength(self): + length = 0 + length += self.Head.GetLength() + length += 1 + 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.WriteDWORD(data, self.SkillIDList[i]) + return data + + def OutputString(self): + DumpString = ''' + Head:%s, + Count:%d, + SkillIDList:%s + '''\ + %( + self.Head.OutputString(), + self.Count, + "..." + ) + return DumpString + + +m_NAtagCMShentongSkillSet=tagCMShentongSkillSet() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMShentongSkillSet.Head.Cmd,m_NAtagCMShentongSkillSet.Head.SubCmd))] = m_NAtagCMShentongSkillSet + + +#------------------------------------------------------ #B2 01 脱机挂状态 # tagCMLoginState class tagCMLoginState(Structure): -- Gitblit v1.8.0