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 ____difficulty_manager = require("difficulty_manager") local Difficulty = ____difficulty_manager.Difficulty 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.witch_base = __TS__Class() local witch_base = ____exports.witch_base witch_base.name = "witch_base" witch_base.____file_path = "scripts/vscripts/abilities/creep/witch_base.lua" __TS__ClassExtends(witch_base, BaseAbility) function witch_base.prototype.GetIntrinsicModifierName(self) return "modifier_witch_base" end witch_base = __TS__Decorate( witch_base, witch_base, {registerAbility(nil)}, {kind = "class", name = "witch_base"} ) ____exports.witch_base = witch_base ____exports.modifier_witch_base = __TS__Class() local modifier_witch_base = ____exports.modifier_witch_base modifier_witch_base.name = "modifier_witch_base" modifier_witch_base.____file_path = "scripts/vscripts/abilities/creep/witch_base.lua" __TS__ClassExtends(modifier_witch_base, BaseModifier) function modifier_witch_base.prototype.IsHidden(self) return true end function modifier_witch_base.prototype.OnCreated(self, params) local difficulty = Difficulty:getNpcStatScale() local gameTime = GameRules:GetGameTime() / 60 self:SetStackCount(math.floor(gameTime)) end function modifier_witch_base.prototype.OnRefresh(self, params) self:OnCreated(params) end function modifier_witch_base.prototype.DeclareFunctions(self) return { MODIFIER_EVENT_ON_DEATH, MODIFIER_PROPERTY_SPELL_AMPLIFY_PERCENTAGE, MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE, MODIFIER_PROPERTY_EXTRA_HEALTH_BONUS, MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS } end function modifier_witch_base.prototype.GetModifierSpellAmplify_Percentage(self, event) return self:GetStackCount() * self:GetAbility():GetSpecialValueFor("amp_death_bonus") * Difficulty:getNpcStatScale() end function modifier_witch_base.prototype.GetModifierPreAttack_BonusDamage(self) return self:GetStackCount() * self:GetAbility():GetSpecialValueFor("attack_death_bonus") * Difficulty:getNpcStatScale() end function modifier_witch_base.prototype.GetModifierExtraHealthBonus(self) return self:GetStackCount() * self:GetAbility():GetSpecialValueFor("health_death_bonus") * Difficulty:getNpcStatScale() end function modifier_witch_base.prototype.GetModifierPhysicalArmorBonus(self, event) return self:GetStackCount() * self:GetAbility():GetSpecialValueFor("armor_death_bonus") * Difficulty:getNpcStatScale() end modifier_witch_base = __TS__Decorate( modifier_witch_base, modifier_witch_base, {registerModifier(nil)}, {kind = "class", name = "modifier_witch_base"} ) ____exports.modifier_witch_base = modifier_witch_base return ____exports