dEN5

Untitled

Jan 12th, 2020
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.45 KB | None | 0 0
  1. LinkLuaModifier("modifier_magneto_natural_order", "lua_abilities/magneto_natural_order.lua", 0)
  2. LinkLuaModifier("modifier_magneto_natural_order_debuff", "lua_abilities/magneto_natural_order.lua", 0)
  3.  
  4. magneto_natural_order = class({GetIntrinsicModifierName = function() return "modifier_magneto_natural_order" end})
  5. modifier_magneto_natural_order = class({
  6.     IsHidden = function() return true end,
  7.     IsPurgable = function() return false end,
  8.     IsAura = function() return true end,
  9.     GetModifierAura = function() return "modifier_magneto_natural_order_debuff" end
  10. })
  11.  
  12. function modifier_magneto_natural_order:GetAuraSearchTeam() return self:GetAbility():GetAbilityTargetTeam() end
  13. function modifier_magneto_natural_order:GetAuraSearchType() return self:GetAbility():GetAbilityTargetType() end
  14. function modifier_magneto_natural_order:GetAuraSearchFlags() return self:GetAbility():GetAbilityTargetFlags() end
  15. function modifier_magneto_natural_order:GetAuraRadius() return self:GetAbility():GetSpecialValueFor("aura_radius") end
  16.  
  17. modifier_magneto_natural_order_debuff = class({
  18.     IsHidden = function() return false end,
  19.     IsPurgable = function() return false end,
  20.     DeclareFunctions = function() return {MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS, MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS, MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT} end,
  21.     GetEffectName = function() return "particles/units/heroes/hero_elder_titan/elder_titan_natural_order_physical.vpcf" end,
  22.     GetEffectAttachType = function() return PATTACH_ABSORIGIN_FOLLOW end
  23. })
  24.  
  25. function modifier_magneto_natural_order_debuff:OnCreated()
  26.     if IsServer() then
  27.         if self:GetParent():GetPhysicalArmorValue(false) > 0 then
  28.             self.armor_red = self:GetParent():GetPhysicalArmorValue(false) * (self:GetAbility():GetSpecialValueFor("armor_reduction_pct") * 0.01) * -1
  29.         end
  30.         if self:GetParent():IsHero() and self:GetParent():GetAgility() > 0 then
  31.             self.as_red = self:GetParent():GetAgility() * (self:GetAbility():GetSpecialValueFor("as_reduction_pct") * 0.01) * -1
  32.         end
  33.     end
  34. end
  35.  
  36. function modifier_magneto_natural_order_debuff:GetModifierPhysicalArmorBonus() return self.armor_red end
  37. function modifier_magneto_natural_order_debuff:GetModifierMagicalResistanceBonus() return self:GetAbility():GetSpecialValueFor("magic_resistance_pct") * -1 end
  38. function modifier_magneto_natural_order_debuff:GetModifierAttackSpeedBonus_Constant() return self.as_red  end
Advertisement
Add Comment
Please, Sign In to add comment