function modifier_item_orb(keys)
--if --[[not keys.caster:HasModifier("modifier_item_desolator_thinker") or]] not keys.caster:HasModifier("modifier_item_skadi_thinker") then
local desolator = 0
local skadi = 0
--if keys.caster:HasModifier("modifier_item_desolator_thinker") end
--if keys.caster:HasModifier("modifier_item_skadi_thinker") end
for i=0, 5, 1 do
local current_item = keys.caster:GetItemInSlot(i)
if current_item ~= nil then
if current_item:GetName() == "item_desolator_1" then desolator = 1 end
if current_item:GetName() == "item_skadi_1" then skadi = 1 end
end
end
if desolator == 0 then keys.caster:RemoveModifierByName("modifier_item_desolator_thinker")
elseif skadi == 0 then keys.caster:RemoveModifierByName("modifier_item_skadi_thinker")
end
if desolator == 0 and skadi == 0 then
keys.caster:RemoveModifierByName("modifier_item_desolator_orb")
keys.caster:RemoveModifierByName("modifier_item_skadi_orb")
keys.caster:RemoveModifierByName("modifier_item_desolator_skadi_orb")
end
--if --[[desolator == 0 and]] skadi == 1 then
-- keys.ability:ApplyDataDrivenModifier(keys.caster, keys.caster, "modifier_item_skadi_orb", nil)
-- keys.caster:RemoveModifierByName("modifier_item_desolator_orb")
-- --keys.caster:RemoveModifierByName("modifier_item_skadi_orb")
-- keys.caster:RemoveModifierByName("modifier_item_desolator_skadi_orb")
--end
if --[[desolator == 1 and]] skadi == 0 then
keys.ability:ApplyDataDrivenModifier(keys.caster, keys.caster, "modifier_item_desolator_orb", nil)
--keys.caster:RemoveModifierByName("modifier_item_desolator_orb")
keys.caster:RemoveModifierByName("modifier_item_skadi_orb")
keys.caster:RemoveModifierByName("modifier_item_desolator_skadi_orb")
end
if --[[desolator == 1 and]] skadi == 1 then
keys.ability:ApplyDataDrivenModifier(keys.caster, keys.caster, "modifier_item_desolator_skadi_orb", nil)
keys.caster:RemoveModifierByName("modifier_item_desolator_orb")
keys.caster:RemoveModifierByName("modifier_item_skadi_orb")
--keys.caster:RemoveModifierByName("modifier_item_desolator_skadi_orb")
end
--end
end
--Remover
function modifier_item_orb_thinking_remover(keys)
keys.caster:RemoveModifierByName("modifier_item_desolator_orb")
keys.caster:RemoveModifierByName("modifier_item_skadi_orb")
keys.caster:RemoveModifierByName("modifier_item_desolator_skadi_orb")
end
--Joint Cooperation
function modifier_item_desolator_corruption(keys)
keys.target:RemoveModifierByName("modifier_item_desolator_skadi_corruption")
keys.target:RemoveModifierByName("modifier_item_desolator_corruption_for_desolator_skadi")
end
function modifier_item_skadi_corruption(keys)
keys.target:RemoveModifierByName("modifier_item_desolator_skadi_corruption")
keys.target:RemoveModifierByName("modifier_item_desolator_corruption_for_desolator_skadi")
end
function modifier_item_desolator_skadi_corruption(keys) -- Нужно удалить все остальные дебаффы, касающиеся Desolator и Skadi
keys.target:RemoveModifierByName("modifier_item_desolator_corruption")
keys.target:RemoveModifierByName("modifier_item_skadi_corruption")
end
--Corruption Stratification
function modifier_item_skadi_orb(keys)
if keys.target.GetInvulnCount == nil then
if keys.caster:IsRangedAttacker() then
keys.ability:ApplyDataDrivenModifier(keys.caster, keys.target, "modifier_item_skadi_corruption", {duration = keys.ColdDurationRanged})
else
keys.ability:ApplyDataDrivenModifier(keys.caster, keys.target, "modifier_item_skadi_corruption", {duration = keys.ColdDurationMelee})
end
end
end
function modifier_item_desolator_skadi_orb(keys)
if keys.target.GetInvulnCount == nil then
if keys.caster:IsRangedAttacker() then
keys.ability:ApplyDataDrivenModifier(keys.caster, keys.target, "modifier_item_desolator_skadi_corruption", {duration = keys.ColdDurationRanged})
else
keys.ability:ApplyDataDrivenModifier(keys.caster, keys.target, "modifier_item_desolator_skadi_corruption", {duration = keys.ColdDurationMelee})
end
end
end