From bcdc9a6cf4da4c82e458b3c4232391a7a0ff9f90 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期四, 11 十月 2018 11:56:51 +0800
Subject: [PATCH] 4142 【后端】仙魔之争增加一个超级机器人
---
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py | 116 +++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 91 insertions(+), 25 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
index 8213deb..96d39c5 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetPack.py
@@ -8210,56 +8210,74 @@
# A5 C0 神兽穿戴装备 #tagCMDogzEquipItem
class tagCMDogzEquipItem(Structure):
- _pack_ = 1
- _fields_ = [
- ("Cmd", c_ubyte),
- ("SubCmd", c_ubyte),
- ("DogzID", c_ubyte), # 神兽ID
- ("EquipIndex", c_ubyte), #神兽装备所在神兽背包索引
- ]
+ Head = tagHead()
+ DogzID = 0 #(BYTE DogzID)// 神兽ID
+ EquipIndexCount = 0 #(BYTE EquipIndexCount)
+ EquipIndexList = list() #(vector<BYTE> EquipIndexList)//神兽装备所在神兽背包索引列表
+ data = None
def __init__(self):
self.Clear()
- self.Cmd = 0xA5
- self.SubCmd = 0xC0
+ self.Head.Cmd = 0xA5
+ self.Head.SubCmd = 0xC0
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.DogzID,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ self.EquipIndexCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.EquipIndexCount):
+ value,_pos=CommFunc.ReadBYTE(_lpData,_pos)
+ self.EquipIndexList.append(value)
+ return _pos
def Clear(self):
- self.Cmd = 0xA5
- self.SubCmd = 0xC0
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xA5
+ self.Head.SubCmd = 0xC0
self.DogzID = 0
- self.EquipIndex = 0
+ self.EquipIndexCount = 0
+ self.EquipIndexList = list()
return
def GetLength(self):
- return sizeof(tagCMDogzEquipItem)
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ length += 1
+ length += 1 * self.EquipIndexCount
+
+ 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.DogzID)
+ data = CommFunc.WriteBYTE(data, self.EquipIndexCount)
+ for i in range(self.EquipIndexCount):
+ data = CommFunc.WriteBYTE(data, self.EquipIndexList[i])
+ return data
def OutputString(self):
- DumpString = '''// A5 C0 神兽穿戴装备 //tagCMDogzEquipItem:
- Cmd:%s,
- SubCmd:%s,
+ DumpString = '''
+ Head:%s,
DogzID:%d,
- EquipIndex:%d
+ EquipIndexCount:%d,
+ EquipIndexList:%s
'''\
%(
- self.Cmd,
- self.SubCmd,
+ self.Head.OutputString(),
self.DogzID,
- self.EquipIndex
+ self.EquipIndexCount,
+ "..."
)
return DumpString
m_NAtagCMDogzEquipItem=tagCMDogzEquipItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMDogzEquipItem.Cmd,m_NAtagCMDogzEquipItem.SubCmd))] = m_NAtagCMDogzEquipItem
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMDogzEquipItem.Head.Cmd,m_NAtagCMDogzEquipItem.Head.SubCmd))] = m_NAtagCMDogzEquipItem
#------------------------------------------------------
@@ -10257,6 +10275,54 @@
#------------------------------------------------------
+# A5 17 绑玉转盘开始 #tagCMStartBindJadeWheel
+
+class tagCMStartBindJadeWheel(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Cmd", c_ubyte),
+ ("SubCmd", c_ubyte),
+ ]
+
+ def __init__(self):
+ self.Clear()
+ self.Cmd = 0xA5
+ 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 = 0xA5
+ self.SubCmd = 0x17
+ return
+
+ def GetLength(self):
+ return sizeof(tagCMStartBindJadeWheel)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A5 17 绑玉转盘开始 //tagCMStartBindJadeWheel:
+ Cmd:%s,
+ SubCmd:%s
+ '''\
+ %(
+ self.Cmd,
+ self.SubCmd
+ )
+ return DumpString
+
+
+m_NAtagCMStartBindJadeWheel=tagCMStartBindJadeWheel()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagCMStartBindJadeWheel.Cmd,m_NAtagCMStartBindJadeWheel.SubCmd))] = m_NAtagCMStartBindJadeWheel
+
+
+#------------------------------------------------------
# A5 11 试用首充武器 #tagCMTryFirstGoldItem
class tagCMTryFirstGoldItem(Structure):
--
Gitblit v1.8.0