示例#1
0
        public void OnDraw(EventArgs args)
        {
            if (ObjectManager.Player.IsDead)
            {
                return;
            }

            foreach (var enemy in ObjectManager.Get <AIHeroClient>().Where(ene => ene.IsValidTarget(1500)))
            {
                if (Menu.Item("Damage").GetValue <bool>())
                {
                    heroHealthBarIndicator.Unit = enemy;

                    heroHealthBarIndicator.DrawDmg(Damage.GetComboDamage(enemy),
                                                   enemy.Health <= Damage.GetComboDamage(enemy) * .9
                        ? Color.LawnGreen
                        : Color.Yellow);
                }

                if (Menu.Item("Counter").GetValue <bool>())
                {
                    Drawing.DrawText(
                        enemy.HPBarPosition.X + Menu.Item("Vayne.Drawings.Damage.X").GetValue <Slider>().Value,
                        enemy.HPBarPosition.Y + Menu.Item("Vayne.Drawings.Damage.Y").GetValue <Slider>().Value,
                        System.Drawing.Color.AliceBlue,
                        "Attacks: " + Damage.DamageCounter(enemy));
                }
            }
        }
示例#2
0
        private void BeforeAttack(Orbwalking.BeforeAttackEventArgs args)
        {
            AttackableUnit target = args.Target;

            if (target == null ||  // <- The
                Target == null ||  // <- F**k
                Menu.Item("Vayne.Combo.R.Mana").GetValue <Slider>().Value > ObjectManager.Player.ManaPercent ||
                (Menu.Item("Vayne.Combo.R.Stealth").GetValue <bool>() && !qSpell.Spell.IsReady()) ||
                !CheckGuardians())
            {
                return;
            }

            switch (Menu.Item("Vayne.Combo.R.Mode").GetValue <StringList>().SelectedIndex)
            {
            case 0:
                spell.Spell.Cast();
                break;

            case 1:

                if (target.Health > damages.GetComboDamage(Target) * 4 || ObjectManager.Player.HealthPercent <= 20)
                {
                    return;
                }

                spell.Spell.Cast();
                break;
            }
        }
示例#3
0
文件: Combo.cs 项目: lolscripts/Aka-s
        public override void Execute()
        {
            var qTarget = TargetSelector.GetTarget(Q.Range + 200, DamageType.Magical);

            if (qTarget == null)
            {
                return;
            }

            if (Settings.UseQ && Q.IsReady() && !Settings.UseQ2)
            {
                foreach (var soldier in Orbwalker.AzirSoldiers)
                {
                    var pred = Prediction.Position.PredictLinearMissile(qTarget, Q.Range, Q.Width, Q.CastDelay,
                                                                        Q.Speed, Int32.MaxValue, soldier.Position, true);
                    if (pred.HitChance >= HitChance.High)
                    {
                        Q.Cast(pred.CastPosition.Extend(pred.UnitPosition, 115.0f).To3D());
                    }
                }
            }

            if (Settings.UseQ && Q.IsReady() && Settings.UseQ2 && Orbwalker.AzirSoldiers.Count == 2)
            {
                foreach (var soldier in Orbwalker.AzirSoldiers)
                {
                    var pred = Prediction.Position.PredictLinearMissile(qTarget, Q.Range, Q.Width, Q.CastDelay,
                                                                        Q.Speed, Int32.MaxValue, soldier.Position, true);
                    if (pred.HitChance >= HitChance.High)
                    {
                        Q.Cast(pred.CastPosition.Extend(pred.UnitPosition, 115.0f).To3D());
                    }
                }
            }

            if (Settings.UseW && W.Handle.Ammo > 0)
            {
                var p = ObjectManager.Player.Distance(qTarget, true) > W.RangeSquared
                    ? ObjectManager.Player.Position.To2D().Extend(qTarget.Position.To2D(), W.Range)
                    : qTarget.Position.To2D();
                W.Cast((Vector3)p);
            }

            if (!Settings.UseE &&
                (HeroManager.Enemies.Count(e => e.IsValidTarget(1000)) <= 2 &&
                 Damages.GetComboDamage(qTarget) >= qTarget.Health) && E.IsReady())

            {
                foreach (
                    var soldier in
                    Orbwalker.AzirSoldiers.Where(
                        s => ObjectManager.Player.Distance(s) < E.RangeSquared))


                {
                    if (qTarget.Position.Between(Player.Instance.Position, soldier.ServerPosition))
                    {
                        E.Cast(soldier.ServerPosition);
                    }
                }
            }



            if (Damages.GetComboDamage(qTarget) >= qTarget.Health)
            {
                if (Settings.UseR && R.IsReady())
                {
                    R.Cast(qTarget.Position);
                }
                if (Settings.UseIgnite && SpellManager.Ignite.IsReady())
                {
                    SpellManager.Ignite.Cast(qTarget);
                }
            }
        }