battle
parent
60916bfbf4
commit
de7faf0af4
|
|
@ -679,6 +679,55 @@ local effectList = {
|
|||
target:AddBuff(Buff.Create(caster, BuffName.DOT, d2, 1, 0, d1, 1))
|
||||
end)
|
||||
end,
|
||||
--添加[a]的伤害吸收护盾,持续[b]秒,盾消失的时候反射吸收伤害的[c]%
|
||||
--a[int],b[int],c[float]
|
||||
[40] = function(caster, target, args, interval)
|
||||
local f1 = args[1]
|
||||
local f2 = args[2]
|
||||
local f3 = args[3]
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
target:AddBuff(Buff.Create(caster, BuffName.Shield, f2, f1, f3))
|
||||
end)
|
||||
end,
|
||||
--造成[a]%的[b]伤害,同时有[c]%的概率对该敌人造成[d]%的伤害,若该技能造成击杀,则有[e]%的概率清除自身CD
|
||||
--a[folat],b[伤害类型],c[float],d[float],e[float]
|
||||
[41] = 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 f3 = args[4]
|
||||
local f4 = args[5] * (1 + caster:GetRoleData(RoleDataName.Hit) / (1 + target:GetRoleData(RoleDataName.Dodge)))
|
||||
casterBulletEffect(caster, target, interval)
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
BattleUtil.RandomAction(f2, function ()
|
||||
f1 = f1 + f3
|
||||
end)
|
||||
BattleUtil.CalDamage(caster, target, dt, f1)
|
||||
if target.isDead then
|
||||
BattleUtil.RandomAction(f4, function ()
|
||||
caster.skill.sp = caster.skill.spPass
|
||||
end)
|
||||
end
|
||||
end)
|
||||
end,
|
||||
--进入虚弱状态,有[a]%的概率受到额外[b]%的伤害,状态持续[c]秒
|
||||
--a[folat],b[float],c[int]
|
||||
[42] = function(caster, target, args, interval)
|
||||
local f1 = args[1] * (1 + caster:GetRoleData(RoleDataName.Hit) / (1 + target:GetRoleData(RoleDataName.Dodge)))
|
||||
local f2 = args[2]
|
||||
local f3 = args[3]
|
||||
BattleLogic.WaitForTrigger(interval, function ()
|
||||
local trigger = function(damagingFunc)
|
||||
BattleUtil.RandomAction(f1, function ()
|
||||
damagingFunc(f2)
|
||||
end)
|
||||
end
|
||||
target.Event:AddEvent(BattleEventName.RoleBeDamagedBefore, trigger)
|
||||
target:AddBuff(Buff.Create(caster, target, BuffName.Brand, f3, "weak", function ()
|
||||
target.Event:RemoveEvent(BattleEventName.RoleBeDamagedBefore, trigger)
|
||||
end))
|
||||
end)
|
||||
end,
|
||||
}
|
||||
|
||||
return effectList
|
||||
Loading…
Reference in New Issue