diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua index 72342eaadb..65041d2192 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua @@ -1841,11 +1841,12 @@ local passivityList = { - -- 释放技能后给除自己外己方生命最少的[a]名武将附加无敌盾持续[b]回合(只剩自己则不加) - -- a[int] b[int] + -- 释放技能后给除自己外己方生命最少的[a]名武将附加无敌盾持续[b]回合(只剩自己则不加)无敌盾目标额外添加 [c]点怒气(c不填/填0 不会触发) + -- a[int] b[int] c[int] [104] = function(role, args,id,judge) local i1 = args[1] local num = args[2] + local rageNum = args[3] -- 释放技能后 local onSkillEnd = function(skill) if skill and not skill.isTriggerJudge and judge==1 then @@ -1867,6 +1868,9 @@ local passivityList = { for i = 1, i1 do if heros[i] then heros[i]:AddBuff(Buff.Create(role, BuffName.Shield, num, ShieldTypeName.AllReduce, 0, 0)) + if rageNum and rageNum~=0 then + BattleUtil.CalRage(role,heros[i],rageNum,CountTypeName.Add) + end end end end @@ -1877,7 +1881,7 @@ local passivityList = { - -- 释放技能后增加友方全体[a]点怒气,是否 + -- 释放技能后增加友方全体[a]点怒气 -- a[int] [105] = function(role, args,id,judge) local i1 = args[1] @@ -2425,7 +2429,7 @@ local passivityList = { - -- TODO + -- TODO 后端用被动 会在战前显示 -- 全体蜀国武将增加[a]%[b] -- a[float]b[属性] -- [129] = {}, @@ -5139,7 +5143,6 @@ local passivityList = { -- 紫+橙 local num = OutDataManager.GetOutData(role.camp, id) - --LogError("笔使用次数:"..num) num = min(maxNum, num) BattleUtil.AddProp(role, pro1, f1 * num, ct1) end, @@ -5839,7 +5842,7 @@ local passivityList = { end local num=0 for key, value in pairs(list) do - local isHave=BattleLogic.BuffMgr:HasBuff(value, BuffName.Control, function(buff) return buff.ctrlType == dot and buff.caster==role and buff.startRound == BattleLogic.GetCurRound() end) + local isHave=BattleLogic.BuffMgr:HasBuff(value, BuffName.Control, function(buff) return buff.ctrlType == dot end) if isHave then BattleUtil.CalRage(role, value, i1, CountTypeName.Sub) end @@ -6159,6 +6162,7 @@ local passivityList = { local shieldType = args[3] local ele =args[4] local OnBuffEnd=function(buff) + if buff.caster~=role then return end @@ -6168,6 +6172,7 @@ local passivityList = { if shieldType and buff and buff.type==BuffName.Shield and buff.shieldType~=shieldType then return end + if buff and not buff.target:IsDead() and buff.type==BuffName.Shield then local val = floor(BattleUtil.FP_Mul(v1, buff.target:GetRoleData(BattlePropList[pro]))) BattleUtil.CalTreat(role,buff.target, val) @@ -7237,22 +7242,27 @@ local passivityList = { local v2 = args[2] local OnDead = function(atkRole,skill) - local arr=RoleManager.Query(function(v) return v.camp==role.camp and v~=role end) - local len=#arr - local rage1=role.Rage*v1 - if rage1