예제 #1
0
        private static float GetComboDamage(Obj_AI_Base enemy)
        {
            float damage = 0;

            if (!Player.Spellbook.IsAutoAttacking)
            {
                damage += (float)ObjectManager.Player.GetAutoAttackDamage(enemy, true);
            }

            if (Q.IsReady())
            {
                damage += Q.GetDamage(enemy);
            }

            if (W.IsReady())
            {
                damage += W.GetDamage(enemy);
            }

            if (SpiderQ.IsReady())
            {
                damage += SpiderQ.GetDamage(enemy);
            }

            if (SpiderW.IsReady())
            {
                damage += SpiderW.GetDamage(enemy);
            }

            return(damage);
        }
예제 #2
0
        private static void DoLaneclear()
        {
            try
            {
                var minion = MinionManager.GetMinions(Player.Position, Q.Range + W.Width).FirstOrDefault();
                if (minion == null)
                {
                    return;
                }

                if (!IsSpider)
                {
                    if (Player.ManaPercent < Menu.Item("GFUELElise.laneclear.Mana").GetValue <Slider>().Value)
                    {
                        if (IsActive("GFUELElise.laneclear.SwitchR") && R.IsReady())
                        {
                            R.Cast();
                        }
                    }

                    if (IsActive("GFUELElise.laneclear.Q") && Q.IsReady())
                    {
                        Q.Cast(minion);
                    }

                    if (IsActive("GFUELElise.laneclear.W") && W.IsReady() && minion.IsValidTarget(W.Range))
                    {
                        W.Cast(minion.Position);
                    }
                    if (IsActive("GFUELElise.laneclear.SwitchR") && (!Q.IsReady() && !W.IsReady()) ||
                        Player.ManaPercent < Menu.Item("GFUELElise.laneclear.Mana").GetValue <Slider>().Value)
                    {
                        R.Cast();
                    }
                }

                if (IsSpider)
                {
                    if (IsActive("GFUELElise.laneclear.SpiderQ") && SpiderQ.IsReady())
                    {
                        SpiderQ.Cast(minion);
                    }

                    if (IsActive("GFUELElise.laneclear.SpiderW") && W.IsReady() && minion.IsValidTarget(SpiderW.Range))
                    {
                        SpiderW.Cast();
                    }

                    if (IsActive("GFUELElise.laneclear.SwitchR") && R.IsReady() && Q.IsReady() && !SpiderQ.IsReady() &&
                        !SpiderW.IsReady())
                    {
                        R.Cast();
                    }
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
예제 #3
0
파일: Program.cs 프로젝트: Muse30/Elise
        private static void Laneclear()
        {
            var minion = EntityManager.MinionsAndMonsters.GetLaneMinions(EntityManager.UnitTeam.Enemy, Player.ServerPosition, Q.Range + W.Width).FirstOrDefault();

            if (minion == null)
            {
                return;
            }

            if (!SpiderForm)
            {
                if (Player.ManaPercent < LaneMenu.Get <Slider>("lmana").CurrentValue)
                {
                    if (LaneMenu.Get <CheckBox>("useRl").CurrentValue&& R.IsReady())
                    {
                        R.Cast();
                    }
                }

                if (LaneMenu.Get <CheckBox>("useQ").CurrentValue&& Q.IsReady())
                {
                    Q.Cast(minion);
                }

                if (LaneMenu.Get <CheckBox>("useW").CurrentValue&& W.IsReady() && minion.IsValidTarget(W.Range))
                {
                    W.Cast(minion.Position);
                }
                if (LaneMenu.Get <CheckBox>("useRl").CurrentValue&& (!Q.IsReady() && !W.IsReady()) || Player.ManaPercent < LaneMenu.Get <Slider>("lmana").CurrentValue)
                {
                    R.Cast();
                }
            }

            if (SpiderForm)
            {
                if (LaneMenu.Get <CheckBox>("useQSpider").CurrentValue&& SpiderQ.IsReady())
                {
                    SpiderQ.Cast(minion);
                }

                if (LaneMenu.Get <CheckBox>("useWSpider").CurrentValue&& W.IsReady() && minion.IsValidTarget(SpiderW.Range))
                {
                    SpiderW.Cast();
                }


                if (LaneMenu.Get <CheckBox>("useRl").CurrentValue&& R.IsReady() && Q.IsReady() && !SpiderW.IsReady())
                {
                    R.Cast();
                }
            }
        }
예제 #4
0
파일: Program.cs 프로젝트: Muse30/Elise
        private static void Jungleclear()
        {
            var minion =
                EntityManager.MinionsAndMonsters.GetJungleMonsters()
                .Where(x => x.IsValidTarget(W.Range))
                .OrderByDescending(x => x.MaxHealth)
                .FirstOrDefault(x => x != null);

            if (minion == null)
            {
                return;
            }

            if (!SpiderForm)
            {
                if (JungleMenu.Get <CheckBox>("useQ").CurrentValue&& Q.IsReady())
                {
                    Q.Cast(minion);
                }

                if (JungleMenu.Get <CheckBox>("useW").CurrentValue&& W.IsReady() && minion.IsValidTarget(W.Range))
                {
                    W.Cast(minion.Position);
                }

                if (JungleMenu.Get <CheckBox>("useRj").CurrentValue&& (!Q.IsReady() && !W.IsReady()) || Player.ManaPercent < JungleMenu.Get <Slider>("jmana").CurrentValue)
                {
                    R.Cast();
                }
            }

            if (SpiderForm)
            {
                if (JungleMenu.Get <CheckBox>("useQSpider").CurrentValue&& SpiderQ.IsReady())
                {
                    SpiderQ.Cast(minion);
                }

                if (JungleMenu.Get <CheckBox>("useWSpider").CurrentValue&& W.IsReady() && minion.IsValidTarget(SpiderW.Range))
                {
                    SpiderW.Cast();
                }

                if (JungleMenu.Get <CheckBox>("useRj2").CurrentValue&& R.IsReady() && Q.IsReady() && SpiderW.IsReady())
                {
                    R.Cast();
                }
            }
        }
예제 #5
0
        private static void DoJungleclear()
        {
            try
            {
                var minion =
                    MinionManager.GetMinions(
                        Player.ServerPosition,
                        Q.Range + W.Width,
                        MinionTypes.All,
                        MinionTeam.Neutral,
                        MinionOrderTypes.MaxHealth).FirstOrDefault();

                if (minion == null)
                {
                    return;
                }

                if (!IsSpider)
                {
                    if (getCheckBoxItem(jungleClearMenu, "GFUELElise.jungleclear.Q") && Q.IsReady())
                    {
                        Q.Cast(minion);
                    }

                    if (getCheckBoxItem(jungleClearMenu, "GFUELElise.jungleclear.W") && W.IsReady() &&
                        minion.IsValidTarget(W.Range))
                    {
                        W.Cast(minion.Position);
                    }

                    if (getCheckBoxItem(jungleClearMenu, "GFUELElise.jungleclear.SwitchR") && !Q.IsReady() &&
                        !W.IsReady() ||
                        Player.ManaPercent < getSliderItem(jungleClearMenu, "GFUELElise.jungleclear.Mana"))
                    {
                        R.Cast();
                    }
                }

                if (IsSpider)
                {
                    if (getCheckBoxItem(jungleClearMenu, "GFUELElise.jungleclear.SpiderQ") && SpiderQ.IsReady())
                    {
                        SpiderQ.Cast(minion);
                    }

                    if (getCheckBoxItem(jungleClearMenu, "GFUELElise.jungleclear.SpiderW") && W.IsReady() &&
                        minion.IsValidTarget(SpiderW.Range))
                    {
                        SpiderW.Cast();
                    }

                    if (getCheckBoxItem(jungleClearMenu, "GFUELElise.jungleclear.SwitchR") && R.IsReady() && Q.IsReady() &&
                        !SpiderQ.IsReady() && !SpiderW.IsReady())
                    {
                        R.Cast();
                    }
                }
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
            }
        }
예제 #6
0
        /// <summary>
        ///     Combo logic
        /// </summary>
        private static void DoCombo()
        {
            try
            {
                var target = TargetSelector.GetTarget(E.Range, DamageType.Magical);
                if (target == null)
                {
                    return;
                }

                if (IsHuman)
                {
                    if (target.HasBuff("buffelisecocoon") && SpiderQ.IsReady() && target.IsValidTarget(SpiderQ.Range))
                    {
                        R.Cast();
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.Combo.E") && target.Distance(Player.Position) <= E.Range &&
                        E.IsReady())
                    {
                        var prediction = E.GetPrediction(target);
                        if (prediction.Hitchance >= HitChance.High)
                        {
                            E.Cast(prediction.CastPosition);
                        }
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.Combo.Q") && Q.IsReady() && target.IsValidTarget(Q.Range))
                    {
                        Q.CastOnUnit(target);
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.Combo.W") && W.IsReady() && target.IsValidTarget(W.Range))
                    {
                        var prediction = W.GetPrediction(target);
                        if (prediction.CollisionObjects.Count == 0)
                        {
                            W.Cast(target.ServerPosition);
                        }
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.Combo.R"))
                    {
                        if (Player.ManaPercent < getSliderItem(comboMenu, "GFUELElise.R.nein"))
                        {
                            R.Cast();
                        }

                        if (Player.Distance(target) <= 750 && R.IsReady() &&
                            (!Q.IsReady() && !W.IsReady() && !E.IsReady() ||
                             !Q.IsReady() && !W.IsReady() && !E.IsReady()))
                        {
                            R.Cast();
                        }

                        if (SpiderQ.IsReady() && target.IsValidTarget(SpiderQ.Range) &&
                            target.IsValidTarget(SpiderQ.Range))
                        {
                            R.Cast();
                        }
                    }
                }

                if (IsSpider)
                {
                    if (getCheckBoxItem(comboMenu, "GFUELElise.ComboSpider.Q") && SpiderQ.IsReady())
                    {
                        if (target.IsValidTarget(SpiderQ.Range))
                        {
                            SpiderQ.Cast(target);
                        }
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.ComboSpider.W") && Player.Distance(target) <= 140 &&
                        SpiderW.IsReady())
                    {
                        if (target.IsValidTarget(SpiderW.Range))
                        {
                            SpiderW.Cast();
                        }
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.ComboSpider.E") &&
                        Player.Distance(target) <= SpiderE.Range && Player.Distance(target) > SpiderQ.Range &&
                        SpiderE.IsReady())
                    {
                        if (target.IsValidTarget(SpiderQ.Range))
                        {
                            return;
                        }
                        SpiderE.Cast(target);
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.Combo.R"))
                    {
                        if (Player.ManaPercent < getSliderItem(comboMenu, "GFUELElise.R.nein"))
                        {
                            return;
                        }

                        if (R.IsReady() && !target.IsValidTarget(SpiderQ.Range) && !SpiderE.IsReady())
                        {
                            R.Cast();
                        }

                        if (!SpiderQ.IsReady() && !SpiderW.IsReady() && R.IsReady())
                        {
                            R.Cast();
                        }

                        if (!SpiderQ.IsReady() && !SpiderE.IsReady() && !SpiderW.IsReady() ||
                            !SpiderQ.IsReady() && Q.IsReady() && Q.GetDamage(target) > target.Health)
                        {
                            R.Cast();
                        }
                    }

                    if (getCheckBoxItem(comboMenu, "GFUELElise.ComboSpider.E") &&
                        Player.Distance(target) > SpiderQ.Range && SpiderE.IsReady())
                    {
                        SpiderE.Cast(target);
                    }
                }

                if (getCheckBoxItem(comboMenu, "GFUELElise.Combo.R"))
                {
                    if (!Q.IsReady() && !W.IsReady() && !R.IsReady() ||
                        (Q.IsReady() && Q.GetDamage(target) >= target.Health) ||
                        W.IsReady() && W.GetDamage(target) >= target.Health)
                    {
                        if (SpiderQ.IsReady() && target.IsValidTarget(SpiderQ.Range))
                        {
                            return;
                        }

                        R.Cast();
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
예제 #7
0
파일: Program.cs 프로젝트: Muse30/Elise
        private static void Combo()
        {
            var target = TargetSelector.GetTarget(E.Range, DamageType.Magical);

            if (target == null)
            {
                return;
            }

            if (HumanForm)
            {
                if (target.HasBuff("buffelisecocoon") && SpiderQ.IsReady() && target.IsValidTarget(SpiderQ.Range))
                {
                    R.Cast();
                }

                if (ComboMenu.Get <CheckBox>("useE").CurrentValue&& target.Distance(Player.Position) <= E.Range && E.IsReady())
                {
                    var prediction = E.GetPrediction(target);
                    if (prediction.HitChance >= HitChance.High)
                    {
                        E.Cast(prediction.CastPosition);
                    }
                }

                if (ComboMenu.Get <CheckBox>("useQ").CurrentValue&& Q.IsReady() && target.IsValidTarget(Q.Range))
                {
                    Q.Cast(target);
                }

                if (ComboMenu.Get <CheckBox>("useW").CurrentValue&& W.IsReady() && target.IsValidTarget(W.Range))
                {
                    var prediction = W.GetPrediction(target);
                    if (prediction.CollisionObjects.Count() == 0)
                    {
                        W.Cast(target.ServerPosition);
                    }
                }

                if (ComboMenu.Get <CheckBox>("useR").CurrentValue)
                {
                    if (Player.ManaPercent < ComboMenu.Get <Slider>("Cmana").CurrentValue)
                    {
                        R.Cast();
                    }

                    if (Player.Distance(target) <= 750 && R.IsReady() &&
                        (!Q.IsReady() && !W.IsReady() && !E.IsReady() ||
                         !Q.IsReady() && !W.IsReady() && !E.IsReady()))
                    {
                        R.Cast();
                    }

                    if (SpiderQ.IsReady() && target.IsValidTarget(SpiderQ.Range) &&
                        target.IsValidTarget(SpiderQ.Range))
                    {
                        R.Cast();
                    }
                }
            }

            if (SpiderForm)
            {
                if (ComboMenu.Get <CheckBox>("useQSpider").CurrentValue&& SpiderQ.IsReady())
                {
                    if (target.IsValidTarget(SpiderQ.Range))
                    {
                        SpiderQ.Cast(target);
                    }
                }

                if (ComboMenu.Get <CheckBox>("useWSpider").CurrentValue&& Player.Distance(target) <= 140 && SpiderW.IsReady())
                {
                    if (target.IsValidTarget(SpiderW.Range))
                    {
                        SpiderW.Cast();
                    }
                }

                if (ComboMenu.Get <CheckBox>("useESpider").CurrentValue&& Player.Distance(target) <= SpiderE.Range && Player.Distance(target) > SpiderQ.Range && SpiderE.IsReady())
                {
                    if (target.IsValidTarget(SpiderQ.Range))
                    {
                        return;
                    }
                    SpiderE.Cast(target);
                }

                if (ComboMenu.Get <CheckBox>("useR").CurrentValue)
                {
                    if (Player.ManaPercent < ComboMenu.Get <Slider>("Cmana").CurrentValue)
                    {
                        return;
                    }

                    if (R.IsReady() && !target.IsValidTarget(SpiderQ.Range) && !SpiderE.IsReady())
                    {
                        R.Cast();
                    }

                    if (!SpiderQ.IsReady() && !SpiderW.IsReady() && R.IsReady())
                    {
                        R.Cast();
                    }

                    if (!SpiderQ.IsReady() && !SpiderE.IsReady() && !SpiderW.IsReady() ||
                        !SpiderQ.IsReady() && Q.IsReady() && GetComboDamage(target) > target.Health)
                    {
                        R.Cast();
                    }
                }

                if (ComboMenu.Get <CheckBox>("useESpider").CurrentValue&& Player.Distance(target) > SpiderQ.Range && SpiderE.IsReady())
                {
                    SpiderE.Cast(target);
                }
            }

            if (ComboMenu.Get <CheckBox>("useR").CurrentValue)
            {
                if (!Q.IsReady() && !W.IsReady() && !R.IsReady() ||
                    (Q.IsReady() && GetComboDamage(target) >= target.Health) ||
                    W.IsReady() && GetComboDamage(target) >= target.Health)
                {
                    if (SpiderQ.IsReady() && target.IsValidTarget(SpiderQ.Range))
                    {
                        return;
                    }

                    R.Cast();
                }
            }
        }