From 12392320a13113f580f75c314e74c952b7a9ab7d Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期四, 14 十一月 2019 10:31:05 +0800 Subject: [PATCH] 8338 【主干】【后端】女娲的祝福等buff物品的类型分配(新增类型18效果与类型9相同) --- ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 187 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 187 insertions(+), 0 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py index a8989cc..a406404 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py @@ -7789,6 +7789,74 @@ #------------------------------------------------------ +# B5 11 部位升星自动购买拍品消耗信息 #tagGCEquipStarAutoBuyCostInfo + +class tagGCEquipStarAutoBuyCostInfo(Structure): + _pack_ = 1 + _fields_ = [ + ("Cmd", c_ubyte), + ("SubCmd", c_ubyte), + ("ClassLV", c_ubyte), # 当前要升星的境界阶 + ("EquipPlace", c_ubyte), #当前要升星的装备位 + ("CurStar", c_ubyte), #当前星级 + ("CurRate", c_ubyte), #当前自动购买后的总概率,不满100则代表拍品库存不足 + ("AutoBuyCostMoney", c_ushort), #自动购买所需总消耗 + ] + + def __init__(self): + self.Clear() + self.Cmd = 0xB5 + 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 = 0xB5 + self.SubCmd = 0x11 + self.ClassLV = 0 + self.EquipPlace = 0 + self.CurStar = 0 + self.CurRate = 0 + self.AutoBuyCostMoney = 0 + return + + def GetLength(self): + return sizeof(tagGCEquipStarAutoBuyCostInfo) + + def GetBuffer(self): + return string_at(addressof(self), self.GetLength()) + + def OutputString(self): + DumpString = '''// B5 11 部位升星自动购买拍品消耗信息 //tagGCEquipStarAutoBuyCostInfo: + Cmd:%s, + SubCmd:%s, + ClassLV:%d, + EquipPlace:%d, + CurStar:%d, + CurRate:%d, + AutoBuyCostMoney:%d + '''\ + %( + self.Cmd, + self.SubCmd, + self.ClassLV, + self.EquipPlace, + self.CurStar, + self.CurRate, + self.AutoBuyCostMoney + ) + return DumpString + + +m_NAtagGCEquipStarAutoBuyCostInfo=tagGCEquipStarAutoBuyCostInfo() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCEquipStarAutoBuyCostInfo.Cmd,m_NAtagGCEquipStarAutoBuyCostInfo.SubCmd))] = m_NAtagGCEquipStarAutoBuyCostInfo + + +#------------------------------------------------------ # B5 05 拍卖行仙盟拍卖中的物品信息 #tagGCFamilyAuctionItemInfo class tagGCFamilyAuctionItem(Structure): @@ -14033,6 +14101,73 @@ m_NAtagMCEquipPartStarInfo=tagMCEquipPartStarInfo() ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCEquipPartStarInfo.Head.Cmd,m_NAtagMCEquipPartStarInfo.Head.SubCmd))] = m_NAtagMCEquipPartStarInfo + + +#------------------------------------------------------ +# A3 B2 装备部位星级套装激活信息 #tagMCEquipPartSuiteActivateInfo + +class tagMCEquipPartSuiteActivateInfo(Structure): + Head = tagHead() + Count = 0 #(BYTE Count) + SuiteActivateStateInfo = list() #(vector<DWORD> SuiteActivateStateInfo)//激活状态值列表,每个数按位存31个激活索引,每个位代表对应的激活索引是否已激活 + data = None + + def __init__(self): + self.Clear() + self.Head.Cmd = 0xA3 + self.Head.SubCmd = 0xB2 + 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.SuiteActivateStateInfo.append(value) + return _pos + + def Clear(self): + self.Head = tagHead() + self.Head.Clear() + self.Head.Cmd = 0xA3 + self.Head.SubCmd = 0xB2 + self.Count = 0 + self.SuiteActivateStateInfo = 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.SuiteActivateStateInfo[i]) + return data + + def OutputString(self): + DumpString = ''' + Head:%s, + Count:%d, + SuiteActivateStateInfo:%s + '''\ + %( + self.Head.OutputString(), + self.Count, + "..." + ) + return DumpString + + +m_NAtagMCEquipPartSuiteActivateInfo=tagMCEquipPartSuiteActivateInfo() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCEquipPartSuiteActivateInfo.Head.Cmd,m_NAtagMCEquipPartSuiteActivateInfo.Head.SubCmd))] = m_NAtagMCEquipPartSuiteActivateInfo #------------------------------------------------------ @@ -24074,6 +24209,58 @@ #------------------------------------------------------ +# AA 24 每日免费直购礼包信息 #tagMCDayFreeGoldGiftState + +class tagMCDayFreeGoldGiftState(Structure): + _pack_ = 1 + _fields_ = [ + ("Cmd", c_ubyte), + ("SubCmd", c_ubyte), + ("DayFreeGoldGiftState", c_ubyte), #每日免费直购礼包是否已领奖 0-未领 1-已领 + ] + + def __init__(self): + self.Clear() + self.Cmd = 0xAA + self.SubCmd = 0x24 + 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 = 0xAA + self.SubCmd = 0x24 + self.DayFreeGoldGiftState = 0 + return + + def GetLength(self): + return sizeof(tagMCDayFreeGoldGiftState) + + def GetBuffer(self): + return string_at(addressof(self), self.GetLength()) + + def OutputString(self): + DumpString = '''// AA 24 每日免费直购礼包信息 //tagMCDayFreeGoldGiftState: + Cmd:%s, + SubCmd:%s, + DayFreeGoldGiftState:%d + '''\ + %( + self.Cmd, + self.SubCmd, + self.DayFreeGoldGiftState + ) + return DumpString + + +m_NAtagMCDayFreeGoldGiftState=tagMCDayFreeGoldGiftState() +ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCDayFreeGoldGiftState.Cmd,m_NAtagMCDayFreeGoldGiftState.SubCmd))] = m_NAtagMCDayFreeGoldGiftState + + +#------------------------------------------------------ # AA 20 节日巡礼活动信息 #tagMCFeastWeekPartyInfo class tagMCFeastWeekPartyItem(Structure): -- Gitblit v1.8.0