function test_ability:OnInventoryContentsChanged()
if self:GetCaster():HasModifier("modifier_item_aghanims_shard") then -- Есть ли модификатор шарда
if not self:IsTrained() then -- Если она не прокачена, то даем ей уровень
self:SetLevel(1) -- Устанавливаем 1 уровень
end
local caster = self:GetCaster()
local abilityName = "test_ability_hidden" -- Имя новой способности
if not caster:HasAbility(abilityName) then -- Проверяем, есть ли уже такая способность у героя
local ability = caster:AddAbility(abilityName) -- Добавляем новую способность
ability:SetLevel(1) -- Устанавливаем уровень новой способности
end
else
self:SetHidden(true) -- Пропал шард, то абилка скрывается с худа, если эта пассивка, то можно установить ей SetLevel(0)
local caster = self:GetCaster()
local abilityName = "test_ability_hidden" -- Имя способности, которую нужно удалить
if caster:HasAbility(abilityName) then -- Проверяем, есть ли такая способность у героя
caster:RemoveAbility(abilityName) -- Удаляем способность
end
end
end