From 303a03f56c01092ce7a7194e994dea2089b4728d Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期四, 11 七月 2019 14:24:45 +0800
Subject: [PATCH] 7982 【后端】【主干】渡劫条件调整
---
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 136 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 132 insertions(+), 4 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index e1abbfd..de47a18 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -10529,6 +10529,7 @@
_fields_ = [
("Cmd", c_ubyte),
("SubCmd", c_ubyte),
+ ("IsRobot", c_ubyte), # 是否匹配机器人
]
def __init__(self):
@@ -10545,6 +10546,7 @@
def Clear(self):
self.Cmd = 0xC0
self.SubCmd = 0x02
+ self.IsRobot = 0
return
def GetLength(self):
@@ -10556,11 +10558,13 @@
def OutputString(self):
DumpString = '''// C0 02 跨服PK开始匹配 //tagGCCrossRealmPKStartMatch:
Cmd:%s,
- SubCmd:%s
+ SubCmd:%s,
+ IsRobot:%d
'''\
%(
self.Cmd,
- self.SubCmd
+ self.SubCmd,
+ self.IsRobot
)
return DumpString
@@ -12850,6 +12854,7 @@
("BossType", c_ubyte), #编号类型0-世界boss 1-boss之家
("KillCnt", c_int), #击杀次数
("ItemAddCnt", c_int), #物品增加次数
+ ("BuyCnt", c_ubyte), #购买次数
]
def __init__(self):
@@ -12865,6 +12870,7 @@
self.BossType = 0
self.KillCnt = 0
self.ItemAddCnt = 0
+ self.BuyCnt = 0
return
def GetLength(self):
@@ -12877,12 +12883,14 @@
DumpString = '''//A3 B7 当日累计攻击boss次数 //tagMCBOSSAttactCnt:
BossType:%d,
KillCnt:%d,
- ItemAddCnt:%d
+ ItemAddCnt:%d,
+ BuyCnt:%d
'''\
%(
self.BossType,
self.KillCnt,
- self.ItemAddCnt
+ self.ItemAddCnt,
+ self.BuyCnt
)
return DumpString
@@ -15285,6 +15293,126 @@
#------------------------------------------------------
+# A3 12 通知骑宠觉醒信息 #tagMCHorsePetSkinData
+
+class tagMCHorsePetSkinInfo(Structure):
+ _pack_ = 1
+ _fields_ = [
+ ("Type", c_ubyte), # 1-坐骑 2-灵宠
+ ("ID", c_int), # 对应坐骑表灵宠表ID
+ ("Exp", c_int), #经验
+ ("SkinLV", c_ubyte), #觉醒等级
+ ("SkinIndex", c_ubyte), #当前选择外观
+ ]
+
+ def __init__(self):
+ self.Clear()
+ 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.Type = 0
+ self.ID = 0
+ self.Exp = 0
+ self.SkinLV = 0
+ self.SkinIndex = 0
+ return
+
+ def GetLength(self):
+ return sizeof(tagMCHorsePetSkinInfo)
+
+ def GetBuffer(self):
+ return string_at(addressof(self), self.GetLength())
+
+ def OutputString(self):
+ DumpString = '''// A3 12 通知骑宠觉醒信息 //tagMCHorsePetSkinData:
+ Type:%d,
+ ID:%d,
+ Exp:%d,
+ SkinLV:%d,
+ SkinIndex:%d
+ '''\
+ %(
+ self.Type,
+ self.ID,
+ self.Exp,
+ self.SkinLV,
+ self.SkinIndex
+ )
+ return DumpString
+
+
+class tagMCHorsePetSkinData(Structure):
+ Head = tagHead()
+ Num = 0 #(BYTE Num)//个数
+ InfoList = list() #(vector<tagMCHorsePetSkinInfo> InfoList)// 数据列表
+ 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.Num,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.Num):
+ temInfoList = tagMCHorsePetSkinInfo()
+ _pos = temInfoList.ReadData(_lpData, _pos)
+ self.InfoList.append(temInfoList)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xA3
+ self.Head.SubCmd = 0x12
+ self.Num = 0
+ self.InfoList = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ for i in range(self.Num):
+ length += self.InfoList[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.Num)
+ for i in range(self.Num):
+ data = CommFunc.WriteString(data, self.InfoList[i].GetLength(), self.InfoList[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ Num:%d,
+ InfoList:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.Num,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagMCHorsePetSkinData=tagMCHorsePetSkinData()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCHorsePetSkinData.Head.Cmd,m_NAtagMCHorsePetSkinData.Head.SubCmd))] = m_NAtagMCHorsePetSkinData
+
+
+#------------------------------------------------------
# A3 52 法宝等级信息 #tagMCMagicWeaponLVInfo
class tagMCMagicWeaponInfo(Structure):
--
Gitblit v1.8.0