From f315c802e369a878872615da836b0a25d97687c2 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 02 十二月 2024 18:46:18 +0800 Subject: [PATCH] 5559 [越南][英文][tqxbqy][砍树]优化启动检查配表格式(增加检查指定的字段格式dict、list) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 24 ++++++++++++++---------- 1 files changed, 14 insertions(+), 10 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py index 23ad2c1..bbcd979 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py @@ -1438,7 +1438,7 @@ ("WORD", "GiftbagType", 1), ("DWORD", "GiftbagID", 1), ("WORD", "BuyCountLimit", 0), - ("list", "GiftItemList", 0), + ("eval", "GiftItemList", 0), ("WORD", "Discount", 0), ), @@ -1507,13 +1507,13 @@ ("WORD", "DropDiffLVLimit", 0), ("list", "GuajiAwardSet", 0), ("list", "DropItemRateList", 0), - ("list", "DropItemRateListBoss", 0), + ("dict", "DropItemRateListBoss", 0), ), "CollectWordsExchange":( ("DWORD", "TemplateID", 1), ("BYTE", "ExchangeNum", 0), - ("list", "ExchangeItemInfo", 0), + ("eval", "ExchangeItemInfo", 0), ("BYTE", "ExchangeCountMax", 0), ("list", "NeedItemList", 0), ("BYTE", "NeedNotify", 0), @@ -1739,7 +1739,7 @@ ("WORD", "AdvanceMinutes", 0), ("WORD", "LVLimit", 0), ("BYTE", "IsDayReset", 0), - ("list", "ShopTypeList", 0), + ("dict", "ShopTypeList", 0), ("char", "MailKey", 0), ("list", "MailItemPrize", 0), ), @@ -2071,7 +2071,7 @@ ("BYTE", "ActionType", 0), ("DWORD", "TotalTimes", 0), ("WORD", "SingleTimes", 0), - ("list", "Reward", 0), + ("eval", "Reward", 0), ("WORD", "Point", 0), ), @@ -4624,7 +4624,7 @@ def GetGiftbagType(self): return self.attrTuple[0] # 礼包模板类型 WORD def GetGiftbagID(self): return self.attrTuple[1] # 礼包编号 DWORD def GetBuyCountLimit(self): return self.attrTuple[2] # 限购次数,0不限购 WORD - def GetGiftItemList(self): return self.attrTuple[3] # 礼包物品信息列表 [(物品ID,个数,是否绑定),...] list + def GetGiftItemList(self): return self.attrTuple[3] # 礼包物品信息列表 [(物品ID,个数,是否绑定),...] eval def GetDiscount(self): return self.attrTuple[4] # 折扣百分比 WORD # 双倍经验活动表 @@ -4733,7 +4733,7 @@ def GetDropDiffLVLimit(self): return self.attrTuple[6] # 掉落等级差值限制 WORD def GetGuajiAwardSet(self): return self.attrTuple[7] # 挂机收益设置,x秒|x次小怪掉率 list def GetDropItemRateList(self): return self.attrTuple[8] # 小怪掉落饼图概率 list - def GetDropItemRateListBoss(self): return self.attrTuple[9] # Boss掉落饼图概率 list + def GetDropItemRateListBoss(self): return self.attrTuple[9] # Boss掉落饼图概率 dict # 集字活动兑换模板表 class IPY_CollectWordsExchange(): @@ -4744,7 +4744,7 @@ def GetTemplateID(self): return self.attrTuple[0] # 模板ID DWORD def GetExchangeNum(self): return self.attrTuple[1] # 兑换编号(同个模板中需唯一不可变) BYTE - def GetExchangeItemInfo(self): return self.attrTuple[2] # 兑换目标物品[物品ID,个数,是否绑定] list + def GetExchangeItemInfo(self): return self.attrTuple[2] # 兑换目标物品[物品ID,个数,是否绑定] eval def GetExchangeCountMax(self): return self.attrTuple[3] # 最大兑换次数(0不限制) BYTE def GetNeedItemList(self): return self.attrTuple[4] # 所需物品信息列表 [[物品ID,个数,是否绑定], ...] list def GetNeedNotify(self): return self.attrTuple[5] # 是否需要广播 BYTE @@ -5085,7 +5085,7 @@ def GetAdvanceMinutes(self): return self.attrTuple[5] # 前端提前X分钟展示活动 WORD def GetLVLimit(self): return self.attrTuple[6] # 限制等级 WORD def GetIsDayReset(self): return self.attrTuple[7] # 是否每天重置 BYTE - def GetShopTypeList(self): return self.attrTuple[8] # 商店类型列表 list + def GetShopTypeList(self): return self.attrTuple[8] # 商店类型列表 dict def GetMailKey(self): return self.attrTuple[9] # 活动更新时发送邮件key char def GetMailItemPrize(self): return self.attrTuple[10] # 活动更新时发送邮件奖励物品 list @@ -5612,7 +5612,7 @@ def GetActionType(self): return self.attrTuple[1] # 活动条目ID BYTE def GetTotalTimes(self): return self.attrTuple[2] # 可完成的总次数,0表示不限次数 DWORD def GetSingleTimes(self): return self.attrTuple[3] # 单次领奖需要的次数 WORD - def GetReward(self): return self.attrTuple[4] # 奖励物品 list + def GetReward(self): return self.attrTuple[4] # 奖励物品 eval def GetPoint(self): return self.attrTuple[5] # 积分 WORD # 运势活动时间表 @@ -6781,8 +6781,12 @@ attrValue = value elif fieldType == "dict": attrValue = self.__StrToDict(value) + if type(attrValue) != dict: + raise elif fieldType == "list": attrValue = self.__StrToList(value) + if type(attrValue) not in [list, tuple]: + raise elif fieldType == "eval": attrValue = self.__StrToEval(value) elif fieldType == "float": -- Gitblit v1.8.0