fight
parent
21b245ed82
commit
eebf2185a2
|
@ -581,6 +581,52 @@ local effectList = {
|
|||
end)
|
||||
end)
|
||||
end,
|
||||
--造成[a]%的[b]伤害,[c]%概率添加[d]的印记,该角色在攻击拥有印记的目标时,额外获得(印记层数*[e])的暴击伤害,印记最多叠加[f]层。
|
||||
--a[folat],b[伤害类型],c[float],d[角色id],e[float],f[float]
|
||||
[33] = function(caster, target, args, interval)
|
||||
local f1 = args[1]
|
||||
local dt = args[2]
|
||||
local f2 = args[3] * (1 + caster:GetRoleData(RoleDataName.Hit) / (1 + target:GetRoleData(RoleDataName.Dodge)))
|
||||
local rid = args[4]
|
||||
local f3 = args[5]
|
||||
local i1 = args[6]
|
||||
caster.Event:DispatchEvent(BattleEventName.RoleViewBullet, interval, target)
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
local layer
|
||||
if BattleLogic.BuffMgr:HasBuff(target, BuffName.Brand, function (buff)
|
||||
local b = buff.flag == rid
|
||||
if b then
|
||||
layer = buff.layer
|
||||
end
|
||||
return b
|
||||
end) then
|
||||
local OnPassiveCriting = function(crit)
|
||||
crit(min(layer, i1) * f3)
|
||||
end
|
||||
caster.Event:AddEvent(BattleEventName.PassiveCriting, OnPassiveCriting)
|
||||
BattleUtil.CalDamage(caster, target, dt, f1)
|
||||
caster.Event:RemoveEvent(BattleEventName.PassiveCriting, OnPassiveCriting)
|
||||
else
|
||||
BattleUtil.CalDamage(caster, target, dt, f1)
|
||||
end
|
||||
buffRandomAction(f2, caster, target, BuffName.Brand, 0, rid)
|
||||
end)
|
||||
end,
|
||||
--对[a]职业,[e]改变目标的[b]属性[c]%,持续[d]秒
|
||||
--a[职业],b[属性],c[float],d[int],e[改变类型]
|
||||
[34] = function(caster, target, args, interval)
|
||||
local pt = args[1]
|
||||
local pro1 = args[2]
|
||||
local f1 = args[3]
|
||||
local f2 = args[4]
|
||||
local ct = args[5]
|
||||
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
if target.professionId == pt then
|
||||
target:AddBuff(Buff.Create(caster, BuffName.PropertyChange, f2, propertyList[pro1], f1, ct))
|
||||
end
|
||||
end)
|
||||
end,
|
||||
}
|
||||
|
||||
return effectList
|
Loading…
Reference in New Issue