--[[ Generated with https://github.com/TypeScriptToLua/TypeScriptToLua ]] local ____exports = {} local ____hero_rage_whitelist = require("abilities.hero_rage.hero_rage_whitelist") local isUnitNameAllowedForHeroRage = ____hero_rage_whitelist.isUnitNameAllowedForHeroRage --- Параметры в духе infinity_levels / hero_rage. local DEFAULT_HERO_RAGE = { max_rage = 100, rage_per_attack = 3, rage_per_damage = 1, time_decrase_rage = 4, tick_decrase_rage = 0.5 } local MOD_NAME = "modifier_hero_rage" --- Вешает систему «ярости» (мана = ярость) на героя, если ещё не висит. -- Нужна любая способность-носитель для AddNewModifier (у всех наших героев есть ability_stacking_crit). -- **Только** герои из `hero_rage_whitelist.ts`. function ____exports.tryApplyDefaultHeroRage(self, hero) if not IsServer() then return end if not hero:IsRealHero() or hero:IsIllusion() then return end if not isUnitNameAllowedForHeroRage( nil, hero:GetUnitName() ) then return end if hero:HasModifier(MOD_NAME) then return end local host = hero:FindAbilityByName("ability_stacking_crit") if not host then return end hero:AddNewModifier(hero, host, MOD_NAME, DEFAULT_HERO_RAGE) end return ____exports