diff --git a/luafight/Modules/Battle/Logic/Base/Passivity.lua b/luafight/Modules/Battle/Logic/Base/Passivity.lua index df8caea0d..a5b294851 100644 --- a/luafight/Modules/Battle/Logic/Base/Passivity.lua +++ b/luafight/Modules/Battle/Logic/Base/Passivity.lua @@ -12801,116 +12801,5 @@ local passivityList = { end BattleLogic.Event:AddEvent(BattleEventName.BattleRoundStart, onRoundChange,nil,nil,role) end, - --我方[a]神将附加自身[b][c]%的伤害属性,并附加[d]%[e]属性到神将身上 (d e不配置不生效) - --a[int],b[int],c[float],d[float],e[int] - [482]=function(role,args,id,judge) - local type=args[1] - local p1=args[2] - local v1=args[3] - local p2=args[4] - local v2=args[5] - local attack=0 - local addPro=0 - local onRoundChange=function(round) - if round==1 then - attack=floor(role:GetRoleData(BattlePropList[p1])*v1) - if p2 and v2 then - addPro = role:GetRoleData(BattlePropList[v2])*p2 - end - local list = RoleManager.Query(function(v) return v.camp == role.camp and v.professionId==type end) - for i=1,#list do - --list[i].data:AddValue(RoleDataName.Attack,attack) - list[i]:AddBuff(Buff.Create(role, BuffName.PropertyChange, 0, RoleDataName.Attack, attack, 1)) - if addPro~=0 then - --list[i].data:AddValue(BattlePropList[v2],addPro) - list[i]:AddBuff(Buff.Create(role, BuffName.PropertyChange, 0, BattlePropList[v2],addPro, 1)) - end - end - end - end - BattleLogic.Event:AddEvent(BattleEventName.BattleRoundStart, onRoundChange,nil,nil,role) - end, - -- 战斗中生命每减少[a]%,自身[b]属性就[c]改变[d]%,持续[e]回合 - -- a[float],b[int 属性],c[int 改变类型],d[float],e[int] - [483] = function(role, args,id,judge) - local f1 = args[1] - local pro = args[2] - local ct = args[3] - local v1 = args[4] - local r1 = args[5] - - local maxDamage= floor(role:GetRoleData(RoleDataName.MaxHp)*f1) - local curDamage=0 - - local onRoleBeDamaged = function(caster, damage, bCrit, finalDmg, damageType, dotType, skill) - - curDamage=curDamage+finalDmg - local num=0 - if curDamage>maxDamage then - num= floor(curDamage/maxDamage) - curDamage=curDamage- maxDamage*num - end - if num>0 then - role:AddBuff(Buff.Create(role, BuffName.PropertyChange, r1, BattlePropList[pro], v1*num, ct)) - end - end - role.Event:AddEvent(BattleEventName.RoleBeDamaged, onRoleBeDamaged,nil,nil,role) - end, - -- 战斗中生命每减少[a]%,友军 [b]属性就[c]改变[d]%,持续[e]回合 - -- a[float],b[int 属性],c[int 改变类型],d[float],e[int] - [484] = function(role, args,id,judge) - local f1 = args[1] - local pro = args[2] - local ct = args[3] - local v1 = args[4] - local r1 = args[5] - local maxDamage= floor(role:GetRoleData(RoleDataName.MaxHp)*f1) - local curDamage=0 - - local onRoleBeDamaged = function(caster, damage, bCrit, finalDmg, damageType, dotType, skill) - local num=0 - curDamage=curDamage+finalDmg - if curDamage>maxDamage then - num=floor(curDamage/maxDamage) - curDamage=curDamage- maxDamage*num - end - if num>0 then - local list=RoleManager.Query(function(v) return v.camp == role.camp end) - for i=1,#list do - list[i]:AddBuff(Buff.Create(role, BuffName.PropertyChange, r1, BattlePropList[pro], v1*num, ct)) - end - end - end - role.Event:AddEvent(BattleEventName.RoleBeDamaged, onRoleBeDamaged,nil,nil,role) - end, - --降低的护甲转移到[a],持续[b]回合 - --a[int 1:自身 2:全体],b[int] - [485] = function(role, args,id,judge) - local type=args[1] - local r1=args[2] - --移除破甲 - local buffBeAdd=function(buff) - if buff.caster==role and buff.type==BuffName.PropertyChange and buff.changeType==4 then - local phy1=buff.target:GetRoleData(buff.propertyName) - BattleLogic.WaitForTrigger(1, function () - local phy2=buff.target:GetRoleData(buff.propertyName) - local list={} - if type==1 then - table.insert(list,role) - else - list=RoleManager.Query(function(v) return v.camp == role.camp end) - end - for i=1,#list do - if phy1-phy2>0 then - list[i]:AddBuff(Buff.Create(role, BuffName.PropertyChange, r1,buff.propertyName, phy1-phy2, 1)) - end - end - end) - end - end - role.Event:AddEvent(BattleEventName.BuffCaster, buffBeAdd,nil,nil,role) - - - end, } return passivityList