| | |
| | | DWORD _NPCID; //NPCID
|
| | | BYTE IsStrengthenByPlayerCount;//是否根据人数成长
|
| | | BYTE LVStrengthenType;//等级成长类型, 0-不按等级成长;1-按玩家平均等级;2-按玩家最大等级;3-按世界等级;
|
| | | BYTE CmpNPCBaseLV;//是否比较NPC表等级, 是的话取NPC表配置等级与成长等级中较大等级
|
| | | DWORD HitTime;//受击次数
|
| | | DWORD DefCoefficient;//人物防御系数
|
| | | DWORD AtkCoefficient;//人物攻击系数
|
| | |
| | | ("DWORD", "NPCID", 1),
|
| | | ("BYTE", "IsStrengthenByPlayerCount", 0),
|
| | | ("BYTE", "LVStrengthenType", 0),
|
| | | ("BYTE", "CmpNPCBaseLV", 0),
|
| | | ("DWORD", "HitTime", 0),
|
| | | ("DWORD", "DefCoefficient", 0),
|
| | | ("DWORD", "AtkCoefficient", 0),
|
| | |
| | | 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 # 人物攻击系数
|
| | |
| | | elif lvStrengthenType == 1:
|
| | | strengthenLV = gameFB.GetGameFBDictByKey(ChConfig.Def_FB_NPCStrengthenAverageLV)
|
| | |
|
| | | if strengthenIpyData.GetCmpNPCBaseLV():
|
| | | strengthenLV = max(strengthenLV, curNPC.GetLV())
|
| | | |
| | | if lvStrengthenType in [1, 2] and not strengthenLV:
|
| | | GameWorld.ErrLog("NPC配置了成长等级类型,但是无法获取到对应的成长等级值!npcID=%s,lvStrengthenType=%s" % (npcID, lvStrengthenType))
|
| | | return
|