public Rupture(Ability ability) : base(ability) { DisableAbilities.AddRange(DisableAbilityNames); BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.AddRange(VsDisable); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Lotus); CounterAbilities.AddRange(Invis); BlinkAbilities.Remove("sandking_burrowstrike"); BlinkAbilities.Remove("riki_blink_strike"); BlinkAbilities.Remove("magnataur_skewer"); BlinkAbilities.Remove("slark_pounce"); BlinkAbilities.Remove("mirana_leap"); BlinkAbilities.Remove("earth_spirit_rolling_boulder"); BlinkAbilities.Remove("item_force_staff"); BlinkAbilities.Remove("item_hurricane_pike"); }
public LifeBreak(Ability ability) : base(ability) { Modifier = new EvadableModifier(HeroTeam, EvadableModifier.GetHeroType.LowestHealth); IsDisjointable = false; BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Eul); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.AddRange(VsMagic); CounterAbilities.AddRange(Invis); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); CounterAbilities.Remove("abaddon_aphotic_shield"); Modifier.AllyCounterAbilities.Add(Lotus); Modifier.AllyCounterAbilities.Add(FortunesEnd); Modifier.AllyCounterAbilities.Add(Eul); Modifier.AllyCounterAbilities.Add(Manta); Modifier.AllyCounterAbilities.AddRange(AllyShields); Modifier.AllyCounterAbilities.AddRange(Invul); Modifier.AllyCounterAbilities.AddRange(VsPhys); }
public EarthSplitter(Ability ability) : base(ability) { Modifier = new EvadableModifier(HeroTeam, EvadableModifier.GetHeroType.LowestHealth); BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(Invul); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.AddRange(Invis); Modifier.AllyCounterAbilities.Add(Lotus); Modifier.AllyCounterAbilities.Add(AphoticShield); Modifier.AllyCounterAbilities.Add(FortunesEnd); AdditionalDelay = Ability.AbilitySpecialData.First(x => x.Name == "crack_time").Value; }
public Omnislash(Ability ability) : base(ability) { Modifier = new OmnislashModifier( EnemyTeam, EvadableModifier.GetHeroType.ClosestToSource, Ability, maxDistanceToSource: Ability.GetRadius()); BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(Lotus); CounterAbilities.Add(HurricanePike); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.AddRange(Invis); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Remove("item_blade_mail"); Modifier.AllyCounterAbilities.Add(PhaseShift); Modifier.AllyCounterAbilities.Add(Eul); Modifier.AllyCounterAbilities.AddRange(Invul); Modifier.AllyCounterAbilities.Add(Manta); Modifier.AllyCounterAbilities.AddRange(VsDamage); Modifier.AllyCounterAbilities.AddRange(VsPhys); Modifier.AllyCounterAbilities.AddRange(AllyShields); }
public Omnislash(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(Lotus); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.AddRange(Invis); CounterAbilities.Add(Bloodstone); CounterAbilities.Remove("item_blade_mail"); ModifierAllyCounter.Add(PhaseShift); ModifierAllyCounter.Add(Eul); ModifierAllyCounter.AddRange(Invul); ModifierAllyCounter.Add(Manta); ModifierAllyCounter.AddRange(VsDamage); ModifierAllyCounter.AddRange(VsPhys); ModifierAllyCounter.AddRange(AllyShields); modifierRadius = Ability.AbilitySpecialData.First(x => x.Name == "omni_slash_radius").Value; var interval = Ability.AbilitySpecialData.First(x => x.Name == "omni_slash_bounce_tick").Value; for (var i = 0u; i < 3; i++) { modifierDuration[i] = interval * (Ability.AbilitySpecialData.First(x => x.Name == "omni_slash_jumps").GetValue(i) - 1); } }
public LifeBreak(Ability ability) : base(ability) { IsDisjointable = false; BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Eul); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.AddRange(VsMagic); CounterAbilities.AddRange(Invis); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); CounterAbilities.Remove("abaddon_aphotic_shield"); ModifierAllyCounter.Add(Lotus); ModifierAllyCounter.Add(FortunesEnd); ModifierAllyCounter.Add(Eul); ModifierAllyCounter.Add(Manta); ModifierAllyCounter.AddRange(AllyShields); ModifierAllyCounter.AddRange(Invul); ModifierAllyCounter.AddRange(VsMagic); for (var i = 0u; i < 4; i++) { modifierDuration[i] = Ability.AbilitySpecialData.First(x => x.Name == "slow_durtion_tooltip") .GetValue(i); } }
public FingerOfDeath(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.AddRange(Invul); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); CounterAbilities.Add(NetherWard); CounterAbilities.AddRange(Invis); AdditionalDelay = Ability.AbilitySpecialData.First(x => x.Name == "damage_delay").Value; aghanimRadius = Ability.AbilitySpecialData.First(x => x.Name == "splash_radius_scepter").Value + 60; }
public Xreturn(Ability ability) : base(ability) { Modifier = new XmarkModifier(HeroTeam, EvadableModifier.GetHeroType.ModifierSource); DisableTimeSinceCastCheck = true; DisablePathfinder = true; BlinkAbilities.Add("morphling_waveform"); BlinkAbilities.Add("sandking_burrowstrike"); BlinkAbilities.Add("faceless_void_time_walk"); BlinkAbilities.Add("phantom_lancer_doppelwalk"); BlinkAbilities.Add("ember_spirit_activate_fire_remnant"); CounterAbilities.Add(Eul); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Manta); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.AddRange(Invul); CounterAbilities.Add(SnowBall); }
public Eclipse(Ability ability) : base(ability) { DisablePathfinder = true; BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(Invul); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.AddRange(Invis); for (var i = 0u; i < duration.Length; i++) { duration[i] = ability.AbilitySpecialData.First(x => x.Name == "duration_tooltip").GetValue(i); durationAghanim[i] = ability.AbilitySpecialData.First(x => x.Name == "duration_tooltip_scepter").GetValue(i); } }
public SongOfTheSiren(Ability ability) : base(ability) { //todo ignore remaining time ? BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); }
public Chronosphere(Ability ability) : base(ability) { CounterAbilities.Add(PhaseShift); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.AddRange(StrongDefUltimates); CounterAbilities.AddRange(VsDisable); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Remove("slark_dark_pact"); BlinkAbilities.Remove("slark_pounce"); if (AbilityOwner.Team == Variables.HeroTeam) { // leave only blink abilities // if void is ally CounterAbilities.Clear(); DisableAbilities.Clear(); } for (var i = 0u; i < 3; i++) { duration[i] = ability.AbilitySpecialData.First(x => x.Name == "duration").GetValue(i); } ObstacleStays = true; }
public Xmark(Ability ability) : base(ability) { IsDisable = false; BlinkAbilities.Clear(); BlinkAbilities.Add("item_blink"); CounterAbilities.AddRange(Invis); CounterAbilities.Add(Lotus); }
public WallOfReplica(Ability ability) : base(ability) { DisablePathfinder = true; BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.AddRange(Invis); }
public FreezingField(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); IgnorePathfinder = true; duration = ability.AbilitySpecialData.First(x => x.Name == "duration_tooltip").Value; }
public GlobalSilence(Ability ability) : base(ability) { Modifier = new EvadableModifier(HeroTeam, EvadableModifier.GetHeroType.LowestHealth); BlinkAbilities.Clear(); Modifier.AllyCounterAbilities.Add(Lotus); Modifier.AllyCounterAbilities.Add(Eul); Modifier.AllyCounterAbilities.Add(Manta); Modifier.AllyCounterAbilities.AddRange(AllyPurges); Modifier.AllyCounterAbilities.AddRange(AllyShields); }
public LucentBeam(Ability ability) : base(ability) { IsDisable = false; BlinkAbilities.Clear(); DisableAbilities.Clear(); CounterAbilities.Add(PhaseShift); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); }
public Sunder(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(Lotus); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(Invul); }
public CullingBlade(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.AddRange(VsDamage); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); }
public PoisonNova(Ability ability) : base(ability) { speed = ability.GetProjectileSpeed(); tavelTime = GetRadius() / speed; projectileSize = Ability.AbilitySpecialData.First(x => x.Name == "start_radius").Value + 60; BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.Add(SnowBall); }
public ManaVoid(Ability ability) : base(ability) { DisablePathfinder = true; BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); CounterAbilities.AddRange(Invis); }
public Sprout(Ability ability) : base(ability) { DisablePathfinder = true; BlinkAbilities.Clear(); CounterAbilities.Add("item_quelling_blade"); CounterAbilities.Add("item_iron_talon"); CounterAbilities.Add("item_bfury"); for (var i = 0u; i < duration.Length; i++) { duration[i] = ability.AbilitySpecialData.First(x => x.Name == "duration").GetValue(i); } }
public SonicWave(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(Eul); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(Invul); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(NetherWard); CounterAbilities.AddRange(Invis); }
public Sunder(Ability ability) : base(ability) { BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(Lotus); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.Add("phantom_lancer_doppelwalk"); CounterAbilities.Add("shadow_demon_disruption"); CounterAbilities.Add("obsidian_destroyer_astral_imprisonment"); }
public DeathWard(Ability ability) : base(ability) { DisablePathfinder = true; BlinkAbilities.AddRange(BlinkAbilityNames); DisableAbilities.AddRange(DisableAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(Invul); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.AddRange(Invis); duration = Ability.GetChannelTime(0); }
public RealityRift(Ability ability) : base(ability) { DisableAbilities.AddRange(DisableAbilityNames); BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Manta); CounterAbilities.Add(Eul); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsPhys); CounterAbilities.AddRange(Invis); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); }
public SanitysEclipse(Ability ability) : base(ability) { DisableAbilities.AddRange(DisableAbilityNames); BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.Add(Manta); CounterAbilities.Add(SleightOfFist); CounterAbilities.AddRange(StrongDefUltimates); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.AddRange(Invis); CounterAbilities.Add(SnowBall); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); }
public Glimpse(Ability ability) : base(ability) { DisablePathfinder = true; DisableAbilities.Clear(); BlinkAbilities.Clear(); BlinkAbilities.Add("sandking_burrowstrike"); BlinkAbilities.Add("phantom_lancer_doppelwalk"); BlinkAbilities.Add("ember_spirit_activate_fire_remnant"); CounterAbilities.Add(Manta); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(TricksOfTheTrade); CounterAbilities.Add(SnowBall); CounterAbilities.AddRange(VsDisable); CounterAbilities.AddRange(VsMagic); CounterAbilities.AddRange(Invul); CounterAbilities.Add(PhaseShift); }
public PoisonNova(Ability ability) : base(ability) { Modifier = new EvadableModifier(HeroTeam, EvadableModifier.GetHeroType.LowestHealth); Modifier.AllyCounterAbilities.AddRange(AllyShields); Modifier.AllyCounterAbilities.AddRange(VsMagic); BlinkAbilities.AddRange(BlinkAbilityNames); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.Add(SnowBall); speed = ability.GetProjectileSpeed(); tavelTime = GetRadius() / speed; projectileSize = Ability.AbilitySpecialData.First(x => x.Name == "start_radius").Value + 60; }
public LightningBolt(Ability ability) : base(ability) { IsDisable = false; BlinkAbilities.Clear(); DisableAbilities.Clear(); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(BallLightning); CounterAbilities.Add(Eul); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Manta); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); CounterAbilities.Add(NetherWard); CounterAbilities.AddRange(Invis); }
public Assassinate(Ability ability) : base(ability) { BlinkAbilities.Add("item_blink"); BlinkAbilities.Add("antimage_blink"); BlinkAbilities.Add("queenofpain_blink"); BlinkAbilities.Add("ember_spirit_activate_fire_remnant"); CounterAbilities.Add(PhaseShift); CounterAbilities.Add(Eul); CounterAbilities.Add(SleightOfFist); CounterAbilities.Add(Manta); CounterAbilities.Add(BallLightning); CounterAbilities.AddRange(VsDamage); CounterAbilities.AddRange(VsMagic); CounterAbilities.Add(Armlet); CounterAbilities.Add(Bloodstone); CounterAbilities.Add(Lotus); aghanimRadius = Ability.AbilitySpecialData.First(x => x.Name == "scepter_radius").Value; }