master_otnew
parent
619e187dc2
commit
af7192f07b
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue