diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua index 3195df26f1..adf1f5e4ac 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua @@ -8385,7 +8385,7 @@ local passivityList = { end if allDamage > 0 then local list = RoleManager.Query(function(v) return v.camp ~= role.camp end) - list = BattleUtil.SortByHpFactor(list,type) + list = BattleUtil.SortByProp(list, RoleDataName.Hp,type) if list and list[1] then BattleUtil.ApplyDamage(nil, role, list[1], allDamage) allDamage = 0 diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua index 8200bac6b6..18f8772611 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua @@ -726,8 +726,9 @@ function BattleUtil.FinalDamage(skill, atkRole, defRole, damage, bCrit, damageTy --血量防护只会防直接伤害 if defRole.bloodShield and skill then realDamage=math.abs(defRole.bloodShield:CountBloodValue(damage)) - damage=realDamage + -- damage=realDamage end + --御甲过滤后的伤害只会处理扣血 by: wangzhenxing shihongyi 2021/09/27 local finalDmg = defRole.data:SubValue(RoleDataName.Hp,realDamage) if finalDmg >= 0 then if defRole:GetRoleData(RoleDataName.Hp) <= 0 and not defRole:IsDead() then