| | |
| | | ("list", "HelpBattleSkills", 0),
|
| | | ("DWORD", "FightPowerEx", 0),
|
| | | ("list", "EquipPlaceColorList", 0),
|
| | | ("list", "HelpBattleNotify", 0),
|
| | | ),
|
| | |
|
| | | "DogzEquipPlus":(
|
| | |
| | | ("DWORD", "NPCID", 1),
|
| | | ("BYTE", "IsStrengthenByPlayerCount", 0),
|
| | | ("BYTE", "LVStrengthenType", 0),
|
| | | ("BYTE", "CmpNPCBaseLV", 0),
|
| | | ("DWORD", "HitTime", 0),
|
| | | ("DWORD", "DefCoefficient", 0),
|
| | | ("DWORD", "AtkCoefficient", 0),
|
| | |
| | | ("DWORD", "SpeedPerC", 0),
|
| | | ("DWORD", "AtkSpeedC", 0),
|
| | | ("DWORD", "SkillAtkRateReduceC", 0),
|
| | | ("DWORD", "HitC", 0),
|
| | | ("DWORD", "MissC", 0),
|
| | | ),
|
| | |
|
| | | "Success":(
|
| | |
| | | ("list", "RandTimeList1", 0),
|
| | | ("list", "RandItemList2", 0),
|
| | | ("list", "RandTimeList2", 0),
|
| | | ("dict", "RandItemByUseCount", 0),
|
| | | ("list", "JobItemList", 0),
|
| | | ("BYTE", "MoneyType", 0),
|
| | | ("DWORD", "MoneyCount", 0),
|
| | |
| | | ("WORD", "LowLV", 0),
|
| | | ("WORD", "HighestLV", 0),
|
| | | ("DWORD", "Defense", 0),
|
| | | ),
|
| | |
|
| | | "TalentSkill":(
|
| | | ("DWORD", "SkillID", 1),
|
| | | ("BYTE", "TalentType", 0),
|
| | | ("BYTE", "Series", 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.NPCID = 0
|
| | | self.IsStrengthenByPlayerCount = 0
|
| | | self.LVStrengthenType = 0
|
| | | self.CmpNPCBaseLV = 0
|
| | | self.HitTime = 0
|
| | | self.DefCoefficient = 0
|
| | | self.AtkCoefficient = 0
|
| | |
| | | def GetNPCID(self): return self.NPCID # NPCID
|
| | | def GetIsStrengthenByPlayerCount(self): return self.IsStrengthenByPlayerCount # 是否根据人数成长
|
| | | def GetLVStrengthenType(self): return self.LVStrengthenType # 等级成长类型, 0-不按等级成长;1-按玩家平均等级;2-按玩家最大等级;3-按世界等级;
|
| | | def GetCmpNPCBaseLV(self): return self.CmpNPCBaseLV # 是否比较NPC表等级, 是的话取NPC表配置等级与成长等级中较大等级
|
| | | def GetHitTime(self): return self.HitTime # 受击次数
|
| | | def GetDefCoefficient(self): return self.DefCoefficient # 人物防御系数
|
| | | def GetAtkCoefficient(self): return self.AtkCoefficient # 人物攻击系数
|
| | |
| | | self.SkillAtkRateC = 0
|
| | | self.SpeedPerC = 0
|
| | | self.AtkSpeedC = 0
|
| | | self.SkillAtkRateReduceC = 0 |
| | | self.SkillAtkRateReduceC = 0
|
| | | self.HitC = 0
|
| | | self.MissC = 0 |
| | | return |
| | | |
| | | def GetClassLV(self): return self.ClassLV # 装备阶级
|
| | |
| | | def GetSkillAtkRateC(self): return self.SkillAtkRateC # 技能伤害百分比系数
|
| | | def GetSpeedPerC(self): return self.SpeedPerC # 移动速度百分比系数
|
| | | def GetAtkSpeedC(self): return self.AtkSpeedC # 攻击速度系数
|
| | | def GetSkillAtkRateReduceC(self): return self.SkillAtkRateReduceC # 技能减伤百分比系数 |
| | | def GetSkillAtkRateReduceC(self): return self.SkillAtkRateReduceC # 技能减伤百分比系数
|
| | | def GetHitC(self): return self.HitC # 命中系数
|
| | | def GetMissC(self): return self.MissC # 闪避系数 |
| | | |
| | | # 成就表 |
| | | class IPY_Success(): |
| | |
| | | self.RandTimeList1 = []
|
| | | self.RandItemList2 = []
|
| | | self.RandTimeList2 = []
|
| | | self.RandItemByUseCount = {}
|
| | | self.JobItemList = []
|
| | | self.MoneyType = 0
|
| | | self.MoneyCount = 0
|
| | |
| | | def GetRandTimeList1(self): return self.RandTimeList1 # 随机次数饼图列表1
|
| | | def GetRandItemList2(self): return self.RandItemList2 # 随机物品饼图列表2
|
| | | def GetRandTimeList2(self): return self.RandTimeList2 # 随机次数饼图列表2
|
| | | def GetRandItemByUseCount(self): return self.RandItemByUseCount # 宝箱开启X次对应特殊产出,与饼图列表2互斥
|
| | | def GetJobItemList(self): return self.JobItemList # 职业物品列表
|
| | | def GetMoneyType(self): return self.MoneyType # 货币类型
|
| | | def GetMoneyCount(self): return self.MoneyCount # 货币数量
|
| | |
| | | def GetLowLV(self): return self.LowLV # 推荐最低等级
|
| | | def GetHighestLV(self): return self.HighestLV # 推荐最高等级
|
| | | def GetDefense(self): return self.Defense # 推荐防御 |
| | | |
| | | # 天赋技能表 |
| | | class IPY_TalentSkill(): |
| | | |
| | | def __init__(self): |
| | | self.SkillID = 0
|
| | | self.TalentType = 0
|
| | | self.Series = 0 |
| | | return |
| | | |
| | | def GetSkillID(self): return self.SkillID # 技能ID
|
| | | def GetTalentType(self): return self.TalentType # 天赋类型
|
| | | def GetSeries(self): return self.Series # 天赋系别 |
| | |
|
| | |
|
| | | def Log(msg, playerID=0, par=0):
|
| | |
| | | self.ipyAllPeoplePartyAwardLen = len(self.ipyAllPeoplePartyAwardCache)
|
| | | self.ipyMapEventPointCache = self.__LoadFileData("MapEventPoint", IPY_MapEventPoint)
|
| | | self.ipyMapEventPointLen = len(self.ipyMapEventPointCache)
|
| | | self.ipyTalentSkillCache = self.__LoadFileData("TalentSkill", IPY_TalentSkill)
|
| | | self.ipyTalentSkillLen = len(self.ipyTalentSkillCache)
|
| | | Log("IPY_FuncConfig count=%s" % len(self.ipyFuncConfigDict))
|
| | | Log("IPY_DataMgr InitOK!")
|
| | | return
|
| | |
| | | def GetAllPeoplePartyAwardByIndex(self, index): return self.ipyAllPeoplePartyAwardCache[index]
|
| | | def GetMapEventPointCount(self): return self.ipyMapEventPointLen
|
| | | def GetMapEventPointByIndex(self, index): return self.ipyMapEventPointCache[index]
|
| | | def GetTalentSkillCount(self): return self.ipyTalentSkillLen
|
| | | def GetTalentSkillByIndex(self, index): return self.ipyTalentSkillCache[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:
|