Exemple #1
0
        private static void OnAfterAttack(Orbwalker.OrbwalkerActionArgs e)
        {
            if (e.Target.IsValidTarget() && (e.Target is Obj_AI_Base))
            {
                switch (Orbwalker.ActiveMode)
                {
                case OrbwalkerMode.Orbwalk:
                    if (e.Target is Obj_AI_Hero)
                    {
                        PreliminaryQCheck((Obj_AI_Hero)e.Target, OrbwalkerMode.Orbwalk);
                    }
                    break;

                case OrbwalkerMode.Hybrid:
                    if (e.Target is Obj_AI_Hero)
                    {
                        PreliminaryQCheck((Obj_AI_Hero)e.Target, OrbwalkerMode.Hybrid);
                    }
                    TryEThird((Obj_AI_Base)e.Target);
                    break;

                case OrbwalkerMode.LaneClear:
                    OnFarm(e);
                    break;
                }

                if (VHRMenu["dz191.vhr.misc"]["dz191.vhr.misc.condemn"]["enextauto"].GetValue <MenuKeyBind>().Active&& spells[SpellSlot.E].IsReady() && (e.Target is Obj_AI_Hero))
                {
                    spells[SpellSlot.E].Cast((Obj_AI_Hero)e.Target);
                    VHRMenu["dz191.vhr.misc"]["dz191.vhr.misc.condemn"]["enextauto"].Toggled = false;
                }
            }
        }
Exemple #2
0
 private static void BeforeAttackFake(Orbwalker.OrbwalkerActionArgs e)
 {
     if (StreamMenu["模拟方式"].GetValue <MenuList>().Index == 1)
     {
         Hud.ShowClick(ClickType.Attack, RandomizePosition(e.Target.Position));
         attacking = true;
     }
 }
Exemple #3
0
        private void Orbwalker_OnAction(object sender, Orbwalker.OrbwalkerActionArgs e)
        {
            var target = e.Target;

            if (e.Type == OrbwalkerType.BeforeAttack)
            {
                BeforeAttackFake(e);
            }
            if (e.Type == OrbwalkerType.AfterAttack)
            {
                AfterAttack(sender, e.Target);
            }
        }
Exemple #4
0
        private static void OnAction(object sender, Orbwalker.OrbwalkerActionArgs orbwalk)
        {
            var target = orbwalk.Target;

            if (!target.IsValidTarget())
            {
                return;
            }

            if (orbwalk.Type == OrbwalkerType.AfterAttack && spells[Spells.Q].IsReady() && target.IsValidTarget() && Felicity == 0x5 && ActiveMode == OrbwalkerMode.Hybrid || ActiveMode == OrbwalkerMode.Orbwalk)
            {
                spells[Spells.Q].Cast();
            }
        }
Exemple #5
0
        private static void Orbwalker_OnAction(object sender, Orbwalker.OrbwalkerActionArgs e)
        {
            switch (e.Type)
            {
            case OrbwalkerType.AfterAttack:
                //AfterAttack Delegate. Q Spells Usage Here.
                OnAfterAttack(e);
                break;

            case OrbwalkerType.BeforeAttack:
                //BeforeAttack Delegate, focus target with W stacks here.
                OnBeforeAttack(e);
                break;
            }
        }
Exemple #6
0
        private static void OnAction(object sender, Orbwalker.OrbwalkerActionArgs orbwalk)
        {
            var target = TargetSelector.GetTarget(Q.Range * 2);

            if (Player.IsWindingUp)
            {
                return;
            }

            var UseE     = Config["combo"]["UseE"].GetValue <MenuBool>().Value;
            var UseQ     = Config["combo"]["UseQ"].GetValue <MenuBool>().Value;
            var harrQ    = Config["harass"]["harrQ"].GetValue <MenuBool>().Value;
            var harrE    = Config["harass"]["harrE"].GetValue <MenuBool>().Value;
            var gapclose = Config["spell"]["qgapcloseonly"].GetValue <MenuBool>().Value;

            if (orbwalk.Type == OrbwalkerType.AfterAttack && Q1 == 1 && Orbwalker.ActiveMode == OrbwalkerMode.Orbwalk && UseE && !target.IsDead ||
                orbwalk.Type == OrbwalkerType.AfterAttack && Q1 == 1 && Orbwalker.ActiveMode == OrbwalkerMode.Hybrid && harrE)
            {
                E.Cast();
                Player.IssueOrder(GameObjectOrder.AutoAttack, target);
            }
            if (orbwalk.Type == OrbwalkerType.AfterAttack && Q1 == 1 && Orbwalker.ActiveMode == OrbwalkerMode.Orbwalk && !E.IsReady())
            {
                Q1 = 0;
            }
            if (Q1 == 0 && !E.IsReady() && Orbwalker.ActiveMode == OrbwalkerMode.Orbwalk && Qcast2() && orbwalk.Type == OrbwalkerType.AfterAttack && !gapclose && UseQ ||
                Q1 == 0 && !E.IsReady() && Orbwalker.ActiveMode == OrbwalkerMode.Hybrid && Qcast2() && orbwalk.Type == OrbwalkerType.AfterAttack && !gapclose && harrQ)
            {
                Q.Cast(target);
                Player.IssueOrder(GameObjectOrder.AutoAttack, target);
            }
            if (orbwalk.Type == OrbwalkerType.AfterAttack && Q1 == 0 && !Q.IsReady() && Orbwalker.ActiveMode == OrbwalkerMode.Orbwalk && UseE && !target.IsDead ||
                orbwalk.Type == OrbwalkerType.AfterAttack && Q1 == 0 && !Q.IsReady() && Orbwalker.ActiveMode == OrbwalkerMode.Hybrid && harrE)
            {
                E.Cast();
            }
            if (orbwalk.Type == OrbwalkerType.AfterAttack && !E.IsReady() &&
                !Q.IsReady() && Orbwalker.ActiveMode == OrbwalkerMode.Orbwalk && Config["spell"]["forceR"].GetValue <MenuKeyBind>().Active)
            {
                R.Cast(target);
            }
        }
Exemple #7
0
        private static void OnFarm(Orbwalker.OrbwalkerActionArgs e)
        {
            return;

            //TODO Redo this using OnNonKillableMinion
            //TODO Reenable once GetSpellDamage for Vayne is bik
            if (spells[SpellSlot.Q].IsEnabledAndReady(OrbwalkerMode.LaneClear))
            {
                //TODO Change here
                var minionsInRange = GameObjects.EnemyMinions.Where(m => m.DistanceSquared(ObjectManager.Player.ServerPosition) <= ObjectManager.Player.AttackRange * ObjectManager.Player.AttackRange && m.Health <= ObjectManager.Player.GetAutoAttackDamage(m) + SpellSlot.Q.GetVHRSpellDamage(m)).ToList();

                if (!minionsInRange.Any())
                {
                    return;
                }

                if (minionsInRange.Count > 1)
                {
                    var firstMinion = minionsInRange.OrderBy(m => m.HealthPercent).First();
                    UseTumble(firstMinion);
                }
            }
        }
Exemple #8
0
 private static void OnBeforeAttack(Orbwalker.OrbwalkerActionArgs e)
 {
 }