diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Effect.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Effect.lua index b4a6131014..ddfc6fb97c 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Effect.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Effect.lua @@ -2383,7 +2383,7 @@ local effectList = { return end local damage = floor(BattleUtil.ErrorCorrection(f3 * target:GetRoleData(BattlePropList[p1]))) - BattleUtil.ApplyDamage(skill,caster, target,damage) + BattleUtil.FinalDamage(skill,caster, target,damage) end end end) diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua index 44c63e34fd..02e63f1cb1 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua @@ -1033,10 +1033,13 @@ local passivityList = { end, --受击后,有[a]的概率对攻击者造成眩晕,持续[b]秒。 --a[float],b[int] - [54] = function(role, args) + [54] = function(role, args,id,judge) local f1 = args[1] local f2 = args[2] local OnBeHit = function(atkRole, damage, bCrit, finalDmg, damageType,skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end if atkRole.isTeam then return end @@ -6314,6 +6317,7 @@ local passivityList = { if isBoss and (f1==12 or f1==13) then return end + --观音,这个被动只有额外技能才能触发 by:王振兴 2021/1/21 17:48 if skill and skill.type == BattleSkillType.Extra then local val = -floor(BattleUtil.FP_Mul(dt, defRole:GetRoleData(BattlePropList[f1]))) if func then diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua index b93b0b47e3..44bc59b49a 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua @@ -275,7 +275,7 @@ skill2={1132051,0.8,0,1,{200212,{1,0.89,2}}}, skill3={1151111,0.05,0,1,{220000,{1,0.86,2}}}, skill4={10000351,0.3,0.5,4,{400000,{1,1.75,1}}}, skill5={12011001,0.3,0.5,4,{400000,{1,2.2,1}}}, -skill6={12011001,0.3,0.5,4,{400000,{1,2.2,1}}}, +skill6={100923,0.15,1.5,1,{260004,{126,0.48,1,4,1,0,4,12,0}}}, } diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua index d21f4f35ff..5598e2291d 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua @@ -105,52 +105,55 @@ function BattleUtil.ChooseTowCol(arr) for key, value in pairs(twoArr) do table.insert(teamArr,value) end - end - --如果第一列数量>第二列数量就把第一列选入 - if one>two then - if one>0 then - for key, value in pairs(oneArr) do - table.insert(teamArr,value) - end - end - --如果第二列数量>第三列数量就把第二列选入 - if two>three then - if two>0 then - for key, value in pairs(twoArr) do - table.insert(teamArr,value) - end - end - else - --如果第三列数量>第二列数量就把第三列选入 - if three>0 then - for key, value in pairs(threeArr) do - table.insert(teamArr,value) - end - end - end else - --如果第二列数量>第一列数量就把第二列选入 +--如果第一列数量>第二列数量就把第一列选入 +if one>two then + if one>0 then + for key, value in pairs(oneArr) do + table.insert(teamArr,value) + end + end + --如果第二列数量>第三列数量就把第二列选入 + if two>three then if two>0 then for key, value in pairs(twoArr) do table.insert(teamArr,value) end end - --如果第一列数量>第三列数量就把第一列选入 - if one>three then - if one>0 then - for key, value in pairs(oneArr) do - table.insert(teamArr,value) - end - end - else - --如果第三列数量>第一列数量就把第三列选入 - if three>0 then - for key, value in pairs(threeArr) do - table.insert(teamArr,value) - end + else + --如果第三列数量>第二列数量就把第三列选入 + if three>0 then + for key, value in pairs(threeArr) do + table.insert(teamArr,value) end end + end + else + --如果第二列数量>第一列数量就把第二列选入 + if two>0 then + for key, value in pairs(twoArr) do + table.insert(teamArr,value) + end + end + --如果第一列数量>第三列数量就把第一列选入 + if one>=three then + if one>0 then + for key, value in pairs(oneArr) do + table.insert(teamArr,value) + end + end + else + --如果第三列数量>第一列数量就把第三列选入 + if three>0 then + for key, value in pairs(threeArr) do + table.insert(teamArr,value) + end + end + end + end + end + table.sort(teamArr, function(a, b) return a.position < b.position @@ -608,6 +611,8 @@ function BattleUtil.GetExtraSkillbyId(id) return ExtraReleaseSkill.skill4 elseif id==5 then return ExtraReleaseSkill.skill5 + elseif id==6 then + return ExtraReleaseSkill.skill6 end end