示例#1
0
        internal static void Spellblade(AttackableUnit target, EventArgs args)
        {
            if (!Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
            {
                return;
            }
            if (target == null || !(target is AIHeroClient) || target.IsDead || target.IsInvulnerable || !target.IsEnemy || target.IsPhysicalImmune || target.IsZombie)
            {
                return;
            }
            var enemy = target as AIHeroClient;

            //varuswdebuff
            if (Settings.UseR && SpellManager.R.IsReady() && enemy.GetBuffCount("varuswdebuff") == 2)
            {
                SpellManager.R.Cast(SpellManager.R.GetPrediction(enemy).CastPosition);
            }
            else if (Settings.UseE && SpellManager.E.IsReady() && enemy.GetBuffCount("varuswdebuff") == 2)
            {
                SpellManager.E.Cast(SpellManager.E.GetPrediction(enemy).CastPosition);
            }
            else if (Settings.UseQ && SpellManager.Q.IsReady() && enemy.GetBuffCount("varuswdebuff") == 2)
            {
                SpellManager.Q.StartCharging();
                Core.DelayAction(() => PermaActive.checkQDelayedCast(enemy), 650);
            }
        }
示例#2
0
 public override void Execute()
 {
     //rest in Spellblade()
     if (Settings.UseQ && Q.IsReady() && Player.Instance.CountEnemiesInRange(700) < 1 && Player.Instance.CountEnemiesInRange(1400) > 0)
     {
         var target = TargetSelector.GetTarget(1400, DamageType.Physical);
         if (target != null)
         {
             if (!Q.IsCharging || !SpellManager.isCharging)
             {
                 Q.StartCharging();
                 SpellManager.isCharging = true;
             }
         }
     }
     if (Settings.UseQ && Q.IsFullyCharged && Q.IsCharging && SpellManager.isCharging)
     {
         var target = TargetSelector.GetTarget(1400, DamageType.Physical);
         if (target != null)
         {
             Q.Cast(Q.GetPrediction(target).CastPosition);
             SpellManager.isCharging = false;
         }
     }
     if (Settings.UseQ && Q.IsReady() && Q.IsFullyCharged && Q.IsCharging && SpellManager.isCharging)
     {
         var target = TargetSelector.GetTarget(1400, DamageType.Physical);
         if (target != null)
         {
             Q.Cast(Q.GetPrediction(target).CastPosition);
             SpellManager.isCharging = false;
         }
     }
     if (Settings.UseQ && Q.IsReady() && Settings.UseQInstant)
     {
         var target = TargetSelector.GetTarget(Q.MinimumRange, DamageType.Physical);
         if (target != null && Q.GetPrediction(target).HitChance >= HitChance.Medium)
         {
             SpellManager.Q.StartCharging();
             Core.DelayAction(() => PermaActive.checkQDelayedCast(target), 650);
         }
     }
     if (Settings.UseR && R.IsReady() && Settings.UseRInstant && (!Q.IsCharging || !SpellManager.isCharging))
     {
         var target = TargetSelector.GetTarget(R.Range, DamageType.Physical);
         if (target != null && R.GetPrediction(target).HitChance >= HitChance.Medium)
         {
             R.Cast(R.GetPrediction(target).CastPosition);
         }
     }
     if (Settings.UseE && E.IsReady() && Settings.UseEInstant && (!Q.IsCharging || !SpellManager.isCharging))
     {
         var target = TargetSelector.GetTarget(E.Range, DamageType.Physical);
         if (target != null)
         {
             E.Cast(E.GetPrediction(target).CastPosition);
         }
     }
     if (Settings.useBOTRK)
     {
         if (!castBOTRK())
         {
             castBilgewater();
         }
     }
     if (Settings.useYOUMOUS)
     {
         castYoumous();
     }
     getVision();
 }