| | |
| | | ("list", "HelpBattleSkills", 0),
|
| | | ("DWORD", "FightPowerEx", 0),
|
| | | ("list", "EquipPlaceColorList", 0),
|
| | | ("list", "HelpBattleNotify", 0),
|
| | | ),
|
| | |
|
| | | "DogzEquipPlus":(
|
| | |
| | | ("DWORD", "CftFaintDefRate", 0),
|
| | | ("DWORD", "CftAtkSpeed", 0),
|
| | | ("DWORD", "CftLuckyHit", 0),
|
| | | ("DWORD", "CftSpeedPer", 0),
|
| | | ),
|
| | |
|
| | | "NPCDropItem":(
|
| | |
| | | ("list", "LimitVIPLV", 0),
|
| | | ("DWORD", "LimitLV", 0),
|
| | | ("list", "LimitCnt", 0),
|
| | | ("DWORD", "ServerLimitCnt", 0),
|
| | | ("BYTE", "MoneyType", 0),
|
| | | ("DWORD", "MoneyNum", 0),
|
| | | ("DWORD", "MoneyOriginal", 0),
|
| | | ("DWORD", "LimitValue", 0),
|
| | | ("char", "NotifyMark", 0),
|
| | | ("char", "MailKey", 0),
|
| | | ),
|
| | |
|
| | | "ActSpringSale":(
|
| | |
| | | ("BYTE", "TalentType", 0),
|
| | | ("BYTE", "Series", 0),
|
| | | ),
|
| | |
|
| | | "ActFlashSale":(
|
| | | ("DWORD", "CfgID", 1),
|
| | | ("char", "StartDate", 0),
|
| | | ("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),
|
| | | ),
|
| | | }
|
| | |
|
| | | |
| | |
| | | self.BaseAttrValues = []
|
| | | self.HelpBattleSkills = []
|
| | | self.FightPowerEx = 0
|
| | | self.EquipPlaceColorList = [] |
| | | self.EquipPlaceColorList = []
|
| | | self.HelpBattleNotify = [] |
| | | return |
| | | |
| | | def GetDogzID(self): return self.DogzID # 神兽ID
|
| | |
| | | def GetBaseAttrValues(self): return self.BaseAttrValues # 基础属性值列表
|
| | | def GetHelpBattleSkills(self): return self.HelpBattleSkills # 助战技能ID列表
|
| | | def GetFightPowerEx(self): return self.FightPowerEx # 助战附加战力
|
| | | def GetEquipPlaceColorList(self): return self.EquipPlaceColorList # 穿戴装备颜色限制 |
| | | def GetEquipPlaceColorList(self): return self.EquipPlaceColorList # 穿戴装备颜色限制
|
| | | def GetHelpBattleNotify(self): return self.HelpBattleNotify # 助战广播 ["广播key",[参数1,参数2,...],广播CD分钟] |
| | | |
| | | # 神兽强化表 |
| | | class IPY_DogzEquipPlus(): |
| | |
| | | self.CftIgnoreDefRateReduce = 0
|
| | | self.CftFaintDefRate = 0
|
| | | self.CftAtkSpeed = 0
|
| | | self.CftLuckyHit = 0 |
| | | self.CftLuckyHit = 0
|
| | | self.CftSpeedPer = 0 |
| | | return |
| | | |
| | | def GetLV(self): return self.LV # 等级
|
| | |
| | | def GetCftIgnoreDefRateReduce(self): return self.CftIgnoreDefRateReduce # 无视防御抗性系数
|
| | | def GetCftFaintDefRate(self): return self.CftFaintDefRate # 控制抵抗系数
|
| | | def GetCftAtkSpeed(self): return self.CftAtkSpeed # 攻速系数
|
| | | def GetCftLuckyHit(self): return self.CftLuckyHit # 会心一击系数 |
| | | def GetCftLuckyHit(self): return self.CftLuckyHit # 会心一击系数
|
| | | def GetCftSpeedPer(self): return self.CftSpeedPer # 移动速度百分比系数 |
| | | |
| | | # NPC掉落表 |
| | | class IPY_NPCDropItem(): |
| | |
| | | self.LimitVIPLV = []
|
| | | self.LimitLV = 0
|
| | | self.LimitCnt = []
|
| | | self.ServerLimitCnt = 0
|
| | | self.MoneyType = 0
|
| | | self.MoneyNum = 0
|
| | | self.MoneyOriginal = 0
|
| | | self.LimitValue = 0
|
| | | self.NotifyMark = "" |
| | | self.NotifyMark = ""
|
| | | self.MailKey = "" |
| | | return |
| | | |
| | | def GetID(self): return self.ID # ID
|
| | |
| | | def GetRefreshType(self): return self.RefreshType # 刷新类型 0-不重置,1-onWeek0点,2-onWeek5点,3-OnDay0点,4-OnDay5点
|
| | | def GetLimitVIPLV(self): return self.LimitVIPLV # VIP限制
|
| | | def GetLimitLV(self): return self.LimitLV # 等级限制
|
| | | def GetLimitCnt(self): return self.LimitCnt # 限制数量
|
| | | def GetLimitCnt(self): return self.LimitCnt # 个人限制数量
|
| | | def GetServerLimitCnt(self): return self.ServerLimitCnt # 全服限制数量
|
| | | def GetMoneyType(self): return self.MoneyType # 金钱类型
|
| | | def GetMoneyNum(self): return self.MoneyNum # 金钱数量
|
| | | def GetMoneyOriginal(self): return self.MoneyOriginal # 原价
|
| | | def GetLimitValue(self): return self.LimitValue # 限制条件
|
| | | def GetNotifyMark(self): return self.NotifyMark # 广播提示 |
| | | def GetNotifyMark(self): return self.NotifyMark # 广播提示
|
| | | def GetMailKey(self): return self.MailKey # 背包不足时邮件KEY |
| | | |
| | | # 限时特惠表 |
| | | class IPY_ActSpringSale(): |
| | |
| | | def GetSkillID(self): return self.SkillID # 技能ID
|
| | | def GetTalentType(self): return self.TalentType # 天赋类型
|
| | | def GetSeries(self): return self.Series # 天赋系别 |
| | | |
| | | # 限时抢购表 |
| | | class IPY_ActFlashSale(): |
| | | |
| | | def __init__(self): |
| | | self.CfgID = 0
|
| | | self.StartDate = ""
|
| | | self.EndDate = ""
|
| | | self.StartTimeList = []
|
| | | self.EndTimeList = []
|
| | | self.AdvanceMinutes = 0
|
| | | self.LVLimit = 0
|
| | | self.IsDayReset = 0
|
| | | self.ShopTypeList = []
|
| | | self.MailKey = ""
|
| | | self.MailItemPrize = [] |
| | | return |
| | | |
| | | def GetCfgID(self): return self.CfgID # 配置ID
|
| | | def GetStartDate(self): return self.StartDate # 开启日期
|
| | | 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 GetMailKey(self): return self.MailKey # 活动更新时发送邮件key
|
| | | def GetMailItemPrize(self): return self.MailItemPrize # 活动更新时发送邮件奖励物品 |
| | |
|
| | |
|
| | | def Log(msg, playerID=0, par=0):
|
| | |
| | | self.ipyMapEventPointLen = len(self.ipyMapEventPointCache)
|
| | | self.ipyTalentSkillCache = self.__LoadFileData("TalentSkill", IPY_TalentSkill)
|
| | | self.ipyTalentSkillLen = len(self.ipyTalentSkillCache)
|
| | | self.ipyActFlashSaleCache = self.__LoadFileData("ActFlashSale", IPY_ActFlashSale)
|
| | | self.ipyActFlashSaleLen = len(self.ipyActFlashSaleCache)
|
| | | Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
|
| | | Log("IPY_DataMgr InitOK!")
|
| | | return
|
| | |
| | | def GetMapEventPointByIndex(self, index): return self.ipyMapEventPointCache[index]
|
| | | def GetTalentSkillCount(self): return self.ipyTalentSkillLen
|
| | | def GetTalentSkillByIndex(self, index): return self.ipyTalentSkillCache[index]
|
| | | def GetActFlashSaleCount(self): return self.ipyActFlashSaleLen
|
| | | def GetActFlashSaleByIndex(self, index): return self.ipyActFlashSaleCache[index]
|
| | |
|
| | | IPYData = IPY_DataMgr()
|
| | | def IPY_Data(): return IPYData
|
| | |
| | | '''查询条件下与对应查询字段参考值相近的数据实例;参考值小于配置表最小值时返回none,大于最大值时返回最大值对应的实例
|
| | | @param dtName: 表名,不含tag
|
| | | @param keyName: 参考字段名
|
| | | @param keyValue: 参考字段值
|
| | | @param keyValue: 参考字段值,大于等于字段值时返回对应数据
|
| | | @param conditionDict: 查询条件,{查询字段名:字段值, ...}
|
| | | @return: 找不到数据返回 None , 否则返回对应的 ipyData 数据实例
|
| | | '''
|
| | |
| | | for i in xrange(near - 1, low - 1, -1):
|
| | | nearData = dataList[i]
|
| | | nearValue = getattr(nearData, "%s" % keyName)
|
| | | if nearValue < keyValue:
|
| | | if nearValue <= keyValue:
|
| | | return nearData
|
| | |
|
| | | elif keyValue > nearValue:
|