[战斗]==================126效果修改 生命百分比伤害会被无敌盾挡住
parent
c57ab9ea78
commit
f699634c24
|
@ -2382,6 +2382,7 @@ local effectList = {
|
|||
return
|
||||
end
|
||||
local damage = floor(BattleUtil.ErrorCorrection(f3 * target:GetRoleData(BattlePropList[p1])))
|
||||
damage=BattleUtil.CalAllReduceShield(caster,target,damage)
|
||||
BattleUtil.FinalDamage(skill,caster, target,damage)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -89,6 +89,28 @@ function Shield:CountShield(damage, atkRole,skill)
|
|||
|
||||
return finalDamage
|
||||
end
|
||||
|
||||
--计算无敌盾
|
||||
function Shield:CountAllReduce(damage,atkRole,skill)
|
||||
local finalDamage = damage
|
||||
local isImmuneAllReduceShield=false
|
||||
if self.shieldType == ShieldTypeName.AllReduce then
|
||||
--攻击者免疫无敌盾
|
||||
isImmuneAllReduceShield=atkRole.isImmuneAllReduceShield
|
||||
--特殊处理 白骨精附加的普攻不会必定暴击
|
||||
if atkRole.roleId==10091 and skill and skill.type==BattleSkillType.Normal and skill.isAdd then
|
||||
isImmuneAllReduceShield=false
|
||||
end
|
||||
if isImmuneAllReduceShield and skill then
|
||||
finalDamage=damage
|
||||
else
|
||||
finalDamage = 0
|
||||
end
|
||||
end
|
||||
return finalDamage
|
||||
end
|
||||
|
||||
|
||||
-- 提前计算护盾吸收伤害
|
||||
function Shield:PreCountShield(damage)
|
||||
local finalDamage = 0
|
||||
|
|
|
@ -429,6 +429,16 @@ function BattleUtil.CalShield(atkRole, defRole, damage,skill)
|
|||
end
|
||||
return damage
|
||||
end
|
||||
|
||||
-- 计算护盾
|
||||
function BattleUtil.CalAllReduceShield(atkRole, defRole, damage,skill)
|
||||
for i=1, defRole.shield.size do
|
||||
local buff = defRole.shield.buffer[i]
|
||||
damage = buff:CountAllReduce(damage, atkRole,skill)
|
||||
end
|
||||
return damage
|
||||
end
|
||||
|
||||
-- 提前计算护盾后伤害
|
||||
function BattleUtil.PreCountShield(defRole, damage)
|
||||
for i=1, defRole.shield.size do
|
||||
|
|
Loading…
Reference in New Issue