From c247295386ac3b3f0d10748d5d396e6f7e539dca Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期一, 17 九月 2018 16:44:15 +0800
Subject: [PATCH] fix:3623 子 任务修改 / 【后端】宗门试炼按评级通关触发条件
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py | 201 +++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 174 insertions(+), 27 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index e2e3052..3ba43fe 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -94,6 +94,7 @@
("WORD", "SuccessRateMax", 0),
("BYTE", "AddonsCountMax", 0),
("char", "SysMark", 0),
+ ("BYTE", "SysMarkParamType", 0),
),
"ItemPlus":(
@@ -495,6 +496,7 @@
("DWORD", "SkillAtkRateC", 0),
("DWORD", "SpeedPerC", 0),
("DWORD", "AtkSpeedC", 0),
+ ("DWORD", "SkillAtkRateReduceC", 0),
),
"Success":(
@@ -632,9 +634,12 @@
("char", "EndDate", 0),
("list", "StartTimeList", 0),
("list", "EndTimeList", 0),
+ ("WORD", "AdvanceMinutes", 0),
("WORD", "LVLimit", 0),
("BYTE", "IsDayReset", 0),
("list", "ShopTypeList", 0),
+ ("char", "MailKey", 0),
+ ("list", "MailItemPrize", 0),
),
"DailyQuest":(
@@ -697,6 +702,9 @@
("DWORD", "NPCID", 1),
("DWORD", "MapID", 0),
("BYTE", "RefreshMark", 0),
+ ("BYTE", "IsNeedShunt", 0),
+ ("BYTE", "RelatedType", 0),
+ ("WORD", "RelatedID", 0),
("DWORD", "StoneNPCID", 0),
),
@@ -745,7 +753,7 @@
("DWORD", "DataMapID", 1),
("BYTE", "InspireType", 1),
("WORD", "InspireMaxLV", 0),
- ("DWORD", "MoneyCount", 0),
+ ("char", "MoneyCount", 0),
),
"RuneCompound":(
@@ -900,9 +908,12 @@
("char", "EndDate", 0),
("list", "StartTimeList", 0),
("list", "EndTimeList", 0),
+ ("WORD", "AdvanceMinutes", 0),
("WORD", "LVLimit", 0),
("BYTE", "IsDayReset", 0),
- ("list", "GiftbagList", 0),
+ ("list", "GiftbagTypeList", 0),
+ ("char", "MailKey", 0),
+ ("list", "MailItemPrize", 0),
),
"FlashGiftbag":(
@@ -915,6 +926,21 @@
("char", "NotifyKey", 0),
),
+ "ActExpRate":(
+ ("DWORD", "CfgID", 1),
+ ("WORD", "LVLimit", 0),
+ ("DWORD", "AddExpRate", 0),
+ ),
+
+ "ActCostRebate":(
+ ("DWORD", "CfgID", 1),
+ ("char", "StartDate", 0),
+ ("char", "EndDate", 0),
+ ("WORD", "LVLimit", 0),
+ ("BYTE", "IsDayReset", 0),
+ ("list", "TemplateIDList", 0),
+ ),
+
"CostRebateTemplate":(
("DWORD", "TemplateID", 1),
("DWORD", "NeedCostGold", 0),
@@ -923,12 +949,27 @@
("char", "NotifyKey", 0),
),
+ "ActBossReborn":(
+ ("DWORD", "CfgID", 1),
+ ("char", "StartDate", 0),
+ ("char", "EndDate", 0),
+ ("BYTE", "ResetType", 0),
+ ("WORD", "LVLimit", 0),
+ ("BYTE", "TemplateID", 0),
+ ),
+
"BossReborn":(
("BYTE", "TemplateID", 1),
("BYTE", "ID", 1),
("DWORD", "TotalTimes", 0),
("WORD", "SingleTimes", 0),
("list", "Reward", 0),
+ ),
+
+ "ActRealmPoint":(
+ ("DWORD", "CfgID", 1),
+ ("WORD", "Multiple", 0),
+ ("WORD", "LVLimit", 0),
),
"TrialExchange":(
@@ -1082,7 +1123,8 @@
self.SuccessRate = 0
self.SuccessRateMax = 0
self.AddonsCountMax = 0
- self.SysMark = ""
+ self.SysMark = ""
+ self.SysMarkParamType = 0
return
def GetID(self): return self.ID # 合成配置编号ID
@@ -1095,7 +1137,8 @@
def GetSuccessRate(self): return self.SuccessRate # 成功率万分率
def GetSuccessRateMax(self): return self.SuccessRateMax # 最大成功率万分率
def GetAddonsCountMax(self): return self.AddonsCountMax # 最大可附加材料数, 增加概率用, 非必须, 0代表不可附加材料
- def GetSysMark(self): return self.SysMark # 提示mark
+ def GetSysMark(self): return self.SysMark # 提示mark
+ def GetSysMarkParamType(self): return self.SysMarkParamType # 系统提示参数组合类型
# 物品强化效果表
class IPY_ItemPlus():
@@ -1902,7 +1945,8 @@
self.SuperHitReduceC = 0
self.SkillAtkRateC = 0
self.SpeedPerC = 0
- self.AtkSpeedC = 0
+ self.AtkSpeedC = 0
+ self.SkillAtkRateReduceC = 0
return
def GetClassLV(self): return self.ClassLV # 装备阶级
@@ -1929,7 +1973,8 @@
def GetSuperHitReduceC(self): return self.SuperHitReduceC # 暴击抗性百分比系数
def GetSkillAtkRateC(self): return self.SkillAtkRateC # 技能伤害百分比系数
def GetSpeedPerC(self): return self.SpeedPerC # 移动速度百分比系数
- def GetAtkSpeedC(self): return self.AtkSpeedC # 攻击速度系数
+ def GetAtkSpeedC(self): return self.AtkSpeedC # 攻击速度系数
+ def GetSkillAtkRateReduceC(self): return self.SkillAtkRateReduceC # 技能减伤百分比系数
# 成就表
class IPY_Success():
@@ -2209,9 +2254,12 @@
self.EndDate = ""
self.StartTimeList = []
self.EndTimeList = []
+ self.AdvanceMinutes = 0
self.LVLimit = 0
self.IsDayReset = 0
- self.ShopTypeList = []
+ self.ShopTypeList = []
+ self.MailKey = ""
+ self.MailItemPrize = []
return
def GetCfgID(self): return self.CfgID # 配置ID
@@ -2219,9 +2267,12 @@
def GetEndDate(self): return self.EndDate # 结束日期
def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
def GetEndTimeList(self): return self.EndTimeList # 结束时间列表, 支持多个时段
+ def GetAdvanceMinutes(self): return self.AdvanceMinutes # 前端提前X分钟展示活动
def GetLVLimit(self): return self.LVLimit # 限制等级
def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
- def GetShopTypeList(self): return self.ShopTypeList # 商店类型列表
+ def GetShopTypeList(self): return self.ShopTypeList # 商店类型列表
+ def GetMailKey(self): return self.MailKey # 活动更新时发送邮件key
+ def GetMailItemPrize(self): return self.MailItemPrize # 活动更新时发送邮件奖励物品
# 日常任务表
class IPY_DailyQuest():
@@ -2348,12 +2399,18 @@
self.NPCID = 0
self.MapID = 0
self.RefreshMark = 0
+ self.IsNeedShunt = 0
+ self.RelatedType = 0
+ self.RelatedID = 0
self.StoneNPCID = 0
return
def GetNPCID(self): return self.NPCID # ID
def GetMapID(self): return self.MapID # 地图ID
def GetRefreshMark(self): return self.RefreshMark # 刷新标识点
+ def GetIsNeedShunt(self): return self.IsNeedShunt # 是否需要分流
+ def GetRelatedType(self): return self.RelatedType # 刷怪关联类型
+ def GetRelatedID(self): return self.RelatedID # 关联ID
def GetStoneNPCID(self): return self.StoneNPCID # 墓碑NPCID
# 古神禁地表
@@ -2451,7 +2508,7 @@
self.DataMapID = 0
self.InspireType = 0
self.InspireMaxLV = 0
- self.MoneyCount = 0
+ self.MoneyCount = ""
return
def GetDataMapID(self): return self.DataMapID # 地图ID
@@ -2777,9 +2834,12 @@
self.EndDate = ""
self.StartTimeList = []
self.EndTimeList = []
+ self.AdvanceMinutes = 0
self.LVLimit = 0
self.IsDayReset = 0
- self.GiftbagList = []
+ self.GiftbagTypeList = []
+ self.MailKey = ""
+ self.MailItemPrize = []
return
def GetCfgID(self): return self.CfgID # 配置ID
@@ -2787,9 +2847,12 @@
def GetEndDate(self): return self.EndDate # 结束日期
def GetStartTimeList(self): return self.StartTimeList # 开启时间列表, 支持多个时段
def GetEndTimeList(self): return self.EndTimeList # 结束时间列表, 支持多个时段
+ def GetAdvanceMinutes(self): return self.AdvanceMinutes # 前端提前X分钟展示活动
def GetLVLimit(self): return self.LVLimit # 限制等级
def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
- def GetGiftbagList(self): return self.GiftbagList # 礼包模板类型列表
+ def GetGiftbagTypeList(self): return self.GiftbagTypeList # 礼包类型列表
+ def GetMailKey(self): return self.MailKey # 活动更新时发送邮件key
+ def GetMailItemPrize(self): return self.MailItemPrize # 活动更新时发送邮件奖励物品
# 限时礼包模板表
class IPY_FlashGiftbag():
@@ -2812,6 +2875,38 @@
def GetMainItemID(self): return self.MainItemID # 标的物品ID
def GetNotifyKey(self): return self.NotifyKey # 全服广播key,默认两个参数(玩家名, 档位额度)
+# 双倍经验活动表
+class IPY_ActExpRate():
+
+ def __init__(self):
+ self.CfgID = 0
+ self.LVLimit = 0
+ self.AddExpRate = 0
+ return
+
+ def GetCfgID(self): return self.CfgID # 配置ID
+ def GetLVLimit(self): return self.LVLimit # 限制等级
+ def GetAddExpRate(self): return self.AddExpRate # 经验倍率加成,万分率
+
+# 消费返利活动表
+class IPY_ActCostRebate():
+
+ def __init__(self):
+ self.CfgID = 0
+ self.StartDate = ""
+ self.EndDate = ""
+ self.LVLimit = 0
+ self.IsDayReset = 0
+ self.TemplateIDList = []
+ return
+
+ def GetCfgID(self): return self.CfgID # 配置ID
+ def GetStartDate(self): return self.StartDate # 开启日期
+ def GetEndDate(self): return self.EndDate # 结束日期
+ def GetLVLimit(self): return self.LVLimit # 限制等级
+ def GetIsDayReset(self): return self.IsDayReset # 是否每天重置
+ def GetTemplateIDList(self): return self.TemplateIDList # 模板ID列表
+
# 消费返利模板表
class IPY_CostRebateTemplate():
@@ -2829,6 +2924,25 @@
def GetAwardItemList(self): return self.AwardItemList # 返利物品信息列表 [(物品ID,个数,是否绑定),...]
def GetNotifyKey(self): return self.NotifyKey # 全服广播key,默认两个参数(玩家名, 档位额度)
+# BOSS复活活动时间表
+class IPY_ActBossReborn():
+
+ def __init__(self):
+ self.CfgID = 0
+ self.StartDate = ""
+ self.EndDate = ""
+ self.ResetType = 0
+ self.LVLimit = 0
+ self.TemplateID = 0
+ return
+
+ def GetCfgID(self): return self.CfgID # 配置ID
+ def GetStartDate(self): return self.StartDate # 开启日期
+ def GetEndDate(self): return self.EndDate # 结束日期
+ def GetResetType(self): return self.ResetType # 重置类型,0-0点重置;1-5点重置
+ def GetLVLimit(self): return self.LVLimit # 限制等级
+ def GetTemplateID(self): return self.TemplateID # 模板编号
+
# BOSS复活表
class IPY_BossReborn():
@@ -2845,6 +2959,19 @@
def GetTotalTimes(self): return self.TotalTimes # 可完成的总次数,0表示不限次数
def GetSingleTimes(self): return self.SingleTimes # 单次领奖需要的次数
def GetReward(self): return self.Reward # 奖励物品ID1
+
+# 多倍修行点活动时间表
+class IPY_ActRealmPoint():
+
+ def __init__(self):
+ self.CfgID = 0
+ self.Multiple = 0
+ self.LVLimit = 0
+ return
+
+ def GetCfgID(self): return self.CfgID # 配置ID
+ def GetMultiple(self): return self.Multiple # 倍数
+ def GetLVLimit(self): return self.LVLimit # 限制等级
# 宗门试炼兑换表
class IPY_TrialExchange():
@@ -3100,10 +3227,18 @@
self.ipyActFlashGiftbagLen = len(self.ipyActFlashGiftbagCache)
self.ipyFlashGiftbagCache = self.__LoadFileData("FlashGiftbag", IPY_FlashGiftbag)
self.ipyFlashGiftbagLen = len(self.ipyFlashGiftbagCache)
+ self.ipyActExpRateCache = self.__LoadFileData("ActExpRate", IPY_ActExpRate)
+ self.ipyActExpRateLen = len(self.ipyActExpRateCache)
+ self.ipyActCostRebateCache = self.__LoadFileData("ActCostRebate", IPY_ActCostRebate)
+ self.ipyActCostRebateLen = len(self.ipyActCostRebateCache)
self.ipyCostRebateTemplateCache = self.__LoadFileData("CostRebateTemplate", IPY_CostRebateTemplate)
self.ipyCostRebateTemplateLen = len(self.ipyCostRebateTemplateCache)
+ self.ipyActBossRebornCache = self.__LoadFileData("ActBossReborn", IPY_ActBossReborn)
+ self.ipyActBossRebornLen = len(self.ipyActBossRebornCache)
self.ipyBossRebornCache = self.__LoadFileData("BossReborn", IPY_BossReborn)
self.ipyBossRebornLen = len(self.ipyBossRebornCache)
+ self.ipyActRealmPointCache = self.__LoadFileData("ActRealmPoint", IPY_ActRealmPoint)
+ self.ipyActRealmPointLen = len(self.ipyActRealmPointCache)
self.ipyTrialExchangeCache = self.__LoadFileData("TrialExchange", IPY_TrialExchange)
self.ipyTrialExchangeLen = len(self.ipyTrialExchangeCache)
self.ipyAllPeoplePartyCache = self.__LoadFileData("AllPeopleParty", IPY_AllPeopleParty)
@@ -3203,22 +3338,26 @@
for i, strValue in enumerate(rowList):
if i == 0:
continue
- fieldName = fieldList[i][1]
- strValue = strValue.lstrip().rstrip()
- if strValue.isdigit():
- configValue = int(strValue)
- elif (strValue.startswith("{") and strValue.endswith("}")) \
- or (strValue.startswith("[") and strValue.endswith("]")) \
- or (strValue.startswith("(") and strValue.endswith(")")):
- configValue = eval(strValue)
- elif "_" in strValue and type(self.__StrToDict(strValue)) == dict:
- configValue = self.__StrToDict(strValue)
- elif ChConfig.Def_Str_Montant in strValue:
- configValue = eval("(%s,)" % strValue.replace(ChConfig.Def_Str_Montant, ","))
- elif strValue in ["-", ""]:
- configValue = ""
- else:
- configValue = self.__ToFloat(strValue)
+ try:
+ fieldName = fieldList[i][1]
+ strValue = strValue.lstrip().rstrip()
+ if strValue.isdigit():
+ configValue = int(strValue)
+ elif (strValue.startswith("{") and strValue.endswith("}")) \
+ or (strValue.startswith("[") and strValue.endswith("]")) \
+ or (strValue.startswith("(") and strValue.endswith(")")):
+ configValue = eval(strValue)
+ elif "_" in strValue and type(self.__StrToDict(strValue)) == dict:
+ configValue = self.__StrToDict(strValue)
+ elif ChConfig.Def_Str_Montant in strValue:
+ configValue = eval("(%s,)" % strValue.replace(ChConfig.Def_Str_Montant, ","))
+ elif strValue in ["-", ""]:
+ configValue = ""
+ else:
+ configValue = self.__ToFloat(strValue)
+ except BaseException:
+ ErrLog("SetIpyDataError: tableName=%s,key=%s,i=%s,value=%s" % ("FuncConfig", key, i, strValue))
+ raise
setattr(funcConfigObj, fieldName, configValue)
self.ipyFuncConfigDict[key] = funcConfigObj
return
@@ -3440,10 +3579,18 @@
def GetActFlashGiftbagByIndex(self, index): return self.ipyActFlashGiftbagCache[index]
def GetFlashGiftbagCount(self): return self.ipyFlashGiftbagLen
def GetFlashGiftbagByIndex(self, index): return self.ipyFlashGiftbagCache[index]
+ def GetActExpRateCount(self): return self.ipyActExpRateLen
+ def GetActExpRateByIndex(self, index): return self.ipyActExpRateCache[index]
+ def GetActCostRebateCount(self): return self.ipyActCostRebateLen
+ def GetActCostRebateByIndex(self, index): return self.ipyActCostRebateCache[index]
def GetCostRebateTemplateCount(self): return self.ipyCostRebateTemplateLen
def GetCostRebateTemplateByIndex(self, index): return self.ipyCostRebateTemplateCache[index]
+ def GetActBossRebornCount(self): return self.ipyActBossRebornLen
+ def GetActBossRebornByIndex(self, index): return self.ipyActBossRebornCache[index]
def GetBossRebornCount(self): return self.ipyBossRebornLen
def GetBossRebornByIndex(self, index): return self.ipyBossRebornCache[index]
+ def GetActRealmPointCount(self): return self.ipyActRealmPointLen
+ def GetActRealmPointByIndex(self, index): return self.ipyActRealmPointCache[index]
def GetTrialExchangeCount(self): return self.ipyTrialExchangeLen
def GetTrialExchangeByIndex(self, index): return self.ipyTrialExchangeCache[index]
def GetAllPeoplePartyCount(self): return self.ipyAllPeoplePartyLen
--
Gitblit v1.8.0