| | |
| | | return 0, ChConfig.Def_HurtType_Miss
|
| | |
|
| | | multiValue = 0 # 伤害倍值
|
| | | summonAtkPer = 1 # 召唤继承提高基础攻击力,取表
|
| | | atkPer = ChConfig.Def_MaxRateValue # 提高基础攻击力
|
| | | summonAtkObj = atkwargs.get('orgAtkObj', None) if atkwargs.get('orgAtkObj', None) else atkObj
|
| | | if summonAtkObj.GetGameObjType() == IPY_GameWorld.gotNPC and summonAtkObj.GetGameNPCObjType() == IPY_GameWorld.gnotSummon:
|
| | | summonAtkPerValue = summonAtkObj.GetDictByKey(ChConfig.Def_GameObjKey_InheritOwner)
|
| | |
| | | if not ownerAtkObj:
|
| | | return 0, ChConfig.Def_HurtType_Miss
|
| | |
|
| | | summonAtkPer = summonAtkPerValue*1.0/ChConfig.Def_MaxRateValue
|
| | | #GameWorld.DebugLog("召唤兽取主人---------%s-%s-%s-%s"%(ownerAtkObj.GetID(), atkSkillPer, atkSkillValue, summonAtkPer))
|
| | | atkPer = summonAtkPerValue
|
| | | #GameWorld.DebugLog("召唤兽取主人---------%s-%s-%s-%s"%(ownerAtkObj.GetID(), atkSkillPer, atkSkillValue, summonAtkPerValue))
|
| | |
|
| | | atkObjType = atkObj.GetGameObjType()
|
| | | defObjType = defObj.GetGameObjType()
|
| | |
| | | rand = random.random() #种子数 0~1
|
| | |
|
| | | #------- 攻击方
|
| | | aMinAtk = atkObj.GetMinAtk() * summonAtkPer # 攻击方最小攻击
|
| | | aMaxAtk = atkObj.GetMaxAtk() * summonAtkPer # 攻击方最大攻击
|
| | | aMinAtk = atkObj.GetMinAtk() # 攻击方最小攻击
|
| | | aMaxAtk = atkObj.GetMaxAtk() # 攻击方最大攻击
|
| | | if petNPCOwner:
|
| | | petNPCOwner.SetDict("useSkillPetID", atkObj.GetID())
|
| | | #主人攻击力可能会变化,所以在这里用到时直接取
|
| | | aMinAtk = petNPCOwner.GetMinAtk() * summonAtkPer # 攻击方最小攻击
|
| | | aMaxAtk = petNPCOwner.GetMaxAtk() * summonAtkPer # 攻击方最大攻击
|
| | | aMinAtk = petNPCOwner.GetMinAtk() # 攻击方最小攻击
|
| | | aMaxAtk = petNPCOwner.GetMaxAtk() # 攻击方最大攻击
|
| | | #GameWorld.DebugLog("灵宠攻击,直接取主人攻击力: %s ~ %s, 自己: %s ~ %s" % (aMinAtk, aMaxAtk, atkObj.GetMinAtk(), atkObj.GetMaxAtk()))
|
| | |
|
| | | hurtValueExPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(petNPCOwner, defObj, curSkill, ChConfig.TriggerType_PetAtkHurtExPer)
|
| | | else:
|
| | | atkPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AttackAddAtkPer) |
| | | |
| | | if atkPer != ChConfig.Def_MaxRateValue:
|
| | | aMinAtk = aMinAtk * float(atkPer)/ChConfig.Def_MaxRateValue
|
| | | aMaxAtk = aMaxAtk * float(atkPer)/ChConfig.Def_MaxRateValue
|
| | |
|
| | | enemyObj = None
|
| | | aPetStrengthenPer, dPetWeakenPer = 0, 0 # 强化灵兽, 弱化灵兽
|