local ____lualib = require("lualib_bundle") local __TS__Class = ____lualib.__TS__Class local __TS__ClassExtends = ____lualib.__TS__ClassExtends local __TS__Decorate = ____lualib.__TS__Decorate local ____exports = {} local modifier_int_buff local ____dota_ts_adapter = require("lib.dota_ts_adapter") local BaseAbility = ____dota_ts_adapter.BaseAbility local BaseModifier = ____dota_ts_adapter.BaseModifier local registerAbility = ____dota_ts_adapter.registerAbility local registerModifier = ____dota_ts_adapter.registerModifier ____exports.int = __TS__Class() local int = ____exports.int int.name = "int" int.____file_path = "scripts/vscripts/abilities/heroes/silencer/int.lua" __TS__ClassExtends(int, BaseAbility) function int.prototype.GetIntrinsicModifierName(self) return modifier_int_buff.name end function int.prototype.Precache(self, context) PrecacheResource("particle", "particles/silencer_count.vpcf", context) PrecacheResource("particle", "particles/units/heroes/hero_nevermore/nevermore_necro_souls.vpcf", context) PrecacheResource("soundfile", "soundevents/game_sounds_heroes/game_sounds_nevermore.vsndevts", context) end int = __TS__Decorate( int, int, {registerAbility(nil)}, {kind = "class", name = "int"} ) ____exports.int = int modifier_int_buff = __TS__Class() modifier_int_buff.name = "modifier_int_buff" modifier_int_buff.____file_path = "scripts/vscripts/abilities/heroes/silencer/int.lua" __TS__ClassExtends(modifier_int_buff, BaseModifier) function modifier_int_buff.prototype.IsHidden(self) return false end function modifier_int_buff.prototype.IsPurgable(self) return false end function modifier_int_buff.prototype.RemoveOnDeath(self) return false end function modifier_int_buff.prototype.OnCreated(self) if not IsServer() then return end local ____opt_0 = self:GetAbility() local interval = ____opt_0 and ____opt_0:GetSpecialValueFor("stack_interval") or 10 self:StartIntervalThink(interval) end function modifier_int_buff.prototype.OnRefresh(self) if not IsServer() then return end local ____opt_2 = self:GetAbility() local interval = ____opt_2 and ____opt_2:GetSpecialValueFor("stack_interval") or 10 self:StartIntervalThink(interval) end function modifier_int_buff.prototype.OnIntervalThink(self) if not IsServer() then return end if self:GetParent():PassivesDisabled() then return end self:SetStackCount(self:GetStackCount() + 1) local parent = self:GetParent() local fx = ParticleManager:CreateParticle("particles/silencer_count.vpcf", PATTACH_OVERHEAD_FOLLOW, parent) ParticleManager:SetParticleControl( fx, 15, Vector(0, 0, 255) ) ParticleManager:SetParticleControl( fx, 16, Vector(1, 0, 0) ) ParticleManager:ReleaseParticleIndex(fx) end function modifier_int_buff.prototype.DeclareFunctions(self) return {MODIFIER_PROPERTY_STATS_INTELLECT_BONUS} end function modifier_int_buff.prototype.GetModifierBonusStats_Intellect(self) if self:GetParent():PassivesDisabled() then return 0 end local ____opt_4 = self:GetAbility() local growInt = ____opt_4 and ____opt_4:GetSpecialValueFor("grow_int") or 0 return self:GetStackCount() * growInt end modifier_int_buff = __TS__Decorate( modifier_int_buff, modifier_int_buff, {registerModifier(nil)}, {kind = "class", name = "modifier_int_buff"} ) return ____exports