Пример #1
0
        private bool Check(Unit9 ally, Unit9 enemy)
        {
            if (enemy.BaseUnit.HasModifier(this.Debuff.DebuffModifierName))
            {
                return(false);
            }

            if (enemy.IsBlockingAbilities)
            {
                return(false);
            }

            if (!this.settings.ForceInvisibility || !enemy.CanBecomeInvisible)
            {
                if (enemy.HealthPercentage > this.settings.HpThreshold)
                {
                    return(false);
                }

                if (!this.settings.OnSight && (!this.settings.OnAttack || !ally.IsAttackingHero()))
                {
                    return(false);
                }
            }

            return(this.Ability.UseAbility(enemy));
        }
Пример #2
0
        private bool Check(Unit9 ally, Unit9 enemy, List <Unit9> enemies)
        {
            if (this.settings.MaxCastRange > 0 && enemy.Distance(ally) > this.settings.MaxCastRange)
            {
                return(false);
            }

            if (enemy.BaseUnit.HasModifier(this.Debuff.DebuffModifierName))
            {
                return(false);
            }

            if (!this.settings.OnSight && (!this.settings.OnAttack || !ally.IsAttackingHero()))
            {
                return(false);
            }

            if (this.Ability.UnitTargetCast && enemy.IsBlockingAbilities)
            {
                return(false);
            }

            return(this.Ability.UseAbility(enemy, enemies, HitChance.Medium, this.settings.EnemiesCount));
        }
Пример #3
0
        private bool Check(Unit9 ally, Unit9 enemy)
        {
            if (this.settings.MaxCastRange > 0 && enemy.Distance(ally) > this.settings.MaxCastRange)
            {
                return(false);
            }

            if (enemy.BaseUnit.HasModifier(this.spiritSiphon.DebuffModifierName))
            {
                return(false);
            }

            if (!this.settings.OnSight && (!this.settings.OnAttack || !ally.IsAttackingHero()))
            {
                return(false);
            }

            if (this.Ability.UnitTargetCast && enemy.IsBlockingAbilities)
            {
                return(false);
            }

            return(this.Ability.UseAbility(enemy));
        }