| | |
| | | curObjType = curObj.GetGameObjType()
|
| | | curSkill = GameWorld.GetGameData().FindSkillByType(skillTypeID, 1)
|
| | |
|
| | | atkObjType = buffOwner.GetGameObjType() if buffOwner else -1
|
| | | |
| | | # 技能对指定BOSS无效果-----------------
|
| | | if curObjType == IPY_GameWorld.gotNPC and curObj.GetIsBoss() not in ChConfig.Def_SkillAttack_NPCIsBoss:
|
| | | if curSkill and GetSkillBattleType(curSkill) == ChConfig.Def_BattleRelationType_CommNoBoss:
|
| | |
| | | if curObjHP_BeforeAttack == 0:
|
| | | # 没有血量不能再触发
|
| | | return
|
| | | |
| | | if buffOwner:
|
| | | aRealmLV, dRealmLV = AttackCommon.GetPVERealmLVs(buffOwner, curObj, atkObjType, curObjType) # 获取境界
|
| | | if curObjType == IPY_GameWorld.gotNPC and ChConfig.IsGameBoss(curObj) and dRealmLV > aRealmLV:
|
| | | # 攻击高境界的BOSS 伤害固定为1
|
| | | lostValue = 1
|
| | |
|
| | | if skillAffect:
|
| | | lostValue = AttackCommon.CalcHurtHPWithBuff(buffOwner, curObj, lostValue, curSkill, tick)
|
| | |
| | | attackerOwner = None
|
| | |
|
| | | #---根据BUFF主人类型决定是否给攻击者主人仇恨---
|
| | | if buffOwner.GetGameObjType() == IPY_GameWorld.gotNPC:
|
| | | if atkObjType == IPY_GameWorld.gotNPC:
|
| | | attackerOwner = NPCCommon.GetNpcObjOwnerDetail(buffOwner)
|
| | |
|
| | | #添加仇恨
|
| | |
| | | curNPCControl.AddObjToAngryList(attackerOwner, 1)
|
| | |
|
| | | # 加伤血
|
| | | if buffOwner.GetGameObjType() == IPY_GameWorld.gotNPC:
|
| | | if atkObjType == IPY_GameWorld.gotNPC:
|
| | | attackerOwner = NPCCommon.GetNpcObjOwnerDetail(buffOwner)
|
| | | else:
|
| | | attackerOwner = buffOwner
|