예제 #1
0
        internal static void Combo(bool useq, bool usew, bool usee, bool user)
        {
            if (useq && KL.Spellbook["Q"].IsReady())
            {
                if (CanQ(TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical)))
                {
                    KL.Spellbook["Q"].Cast();
                }
            }

            if (usew && KL.Spellbook["W"].IsReady())
            {
                var wtarget = TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical);
                if (wtarget.IsValidTarget(KL.Spellbook["W"].Range) && !wtarget.IsZombie)
                {
                    if (wtarget.Distance(KL.Player.ServerPosition) <= 200 && KL.WDmg(wtarget) >= wtarget.Health)
                    {
                        KL.Spellbook["W"].Cast();
                    }
                }
            }

            if (usee && KL.Spellbook["E"].IsReady())
            {
                var etarget = TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical);
                if (etarget.IsValidTarget() && CanE(etarget))
                {
                    if (etarget.Distance(KL.Player.ServerPosition) > 270)
                    {
                        if (KL.Spellbook["Q"].IsReady() || KL.Spellbook["W"].IsReady())
                        {
                            KL.Spellbook["E"].Cast(etarget.ServerPosition);
                        }
                    }
                }
            }

            if (user && KL.Spellbook["R"].IsReady())
            {
                var unit = TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical);

                if (unit.IsValidTarget(KL.Spellbook["R"].Range) && !unit.IsZombie)
                {
                    int rr = unit.GetBuffCount("dariushemo") <= 0 ? 0 : unit.GetBuffCount("dariushemo");
                    if (!unit.HasBuffOfType(BuffType.Invulnerability) && !unit.HasBuffOfType(BuffType.SpellShield))
                    {
                        if (KL.RDmg(unit, rr) + Rmodi >= unit.Health + KL.Hemorrhage(unit, 1))
                        {
                            if (!unit.HasBuffOfType(BuffType.Invulnerability) &&
                                !unit.HasBuffOfType(BuffType.SpellShield))
                            {
                                KL.Spellbook["R"].CastOnUnit(unit);
                            }
                        }
                    }
                }
            }
        }
예제 #2
0
        internal static bool CanQ(Obj_AI_Base unit)
        {
            if (!unit.IsValidTarget() || unit.IsZombie ||
                TargetSelector.IsInvulnerable(unit, TargetSelector.DamageType.Physical))
            {
                return(false);
            }

            if (KL.Player.Distance(unit.ServerPosition) < 175)
            {
                return(false);
            }

            if (KL.Spellbook["R"].IsReady() &&
                KL.Player.Mana - QCost[KL.Spellbook["Q"].Level - 1] < RCost[KL.Spellbook["R"].Level - 1])
            {
                return(false);
            }

            if (KL.Spellbook["W"].IsReady() && KL.WDmg(unit) >= unit.Health &&
                unit.Distance(KL.Player.ServerPosition) <= 200)
            {
                return(false);
            }

            if (Utils.GameTimeTickCount - LastGrabTimeStamp < 250)
            {
                return(false);
            }

            if (KL.Spellbook["W"].IsReady() && KL.Player.HasBuff("DariusNoxonTactictsONH") &&
                unit.Distance(KL.Player.ServerPosition) <= 205)
            {
                return(false);
            }

            if (KL.Player.Distance(unit.ServerPosition) > KL.Spellbook["Q"].Range)
            {
                return(false);
            }

            if (KL.Spellbook["R"].IsReady() && unit.Distance(KL.Player.ServerPosition) <= 460 &&
                KL.RDmg(unit, PassiveCount(unit)) - KL.Hemorrhage(unit, 1) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.GetAutoAttackDamage(unit) * 2 + KL.Hemorrhage(unit, PassiveCount(unit)) >= unit.Health)
            {
                if (KL.Player.Distance(unit.ServerPosition) <= 180)
                {
                    return(false);
                }
            }

            return(true);
        }
예제 #3
0
        internal static void Game_OnUpdate(EventArgs args)
        {
            Rmodi = Config.Item("rmodi").GetValue <Slider>().Value;

            if (KL.Spellbook["R"].IsReady() && Config.Item("ksr").GetValue <bool>())
            {
                foreach (var unit in HeroManager.Enemies.Where(ene => ene.IsValidTarget(KL.Spellbook["R"].Range) && !ene.IsZombie))
                {
                    if (unit.CountEnemiesInRange(1200) <= 1 && Config.Item("ksr1").GetValue <bool>())
                    {
                        if (KL.Player.Distance(unit.ServerPosition) > 265)
                        {
                            if (KL.RDmg(unit, unit.GetBuffCount("dariushemo")) + Rmodi +
                                KL.Hemorrhage(unit, unit.GetBuffCount("dariushemo")) >= unit.Health + (unit.HPRegenRate * unit.Level / 3))
                            {
                                if (!unit.HasBuffOfType(BuffType.Invulnerability) &&
                                    !unit.HasBuffOfType(BuffType.SpellShield))
                                {
                                    KL.Spellbook["R"].CastOnUnit(unit);
                                }
                            }
                        }
                    }

                    if (KL.RDmg(unit, unit.GetBuffCount("dariushemo")) + Rmodi >= unit.Health +
                        KL.Hemorrhage(unit, 5) + (unit.HPRegenRate * unit.Level / 3))
                    {
                        if (!unit.HasBuffOfType(BuffType.Invulnerability) &&
                            !unit.HasBuffOfType(BuffType.SpellShield))
                        {
                            KL.Spellbook["R"].CastOnUnit(unit);
                        }
                    }
                }
            }

            switch (Orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo(Config.Item("useq").GetValue <bool>(), Config.Item("usew").GetValue <bool>(),
                      Config.Item("usee").GetValue <bool>(), Config.Item("user").GetValue <bool>());
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                if (Config.Item("harassq").GetValue <bool>() && KL.Spellbook["Q"].IsReady())
                {
                    if (CanQ(TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical)))
                    {
                        KL.Spellbook["Q"].Cast();
                    }
                }
                break;
            }
        }
예제 #4
0
        internal static void Game_OnUpdate(EventArgs args)
        {
            if (KL.Spellbook["R"].IsReady() && Config.Item("ksr").GetValue <bool>())
            {
                foreach (var unit in HeroManager.Enemies.Where(ene => ene.IsValidTarget(KL.Spellbook["R"].Range) && !ene.IsZombie))
                {
                    if (unit.CountEnemiesInRange(1200) <= 1 && Config.Item("ksr1").GetValue <bool>())
                    {
                        if (KL.RDmg(unit, PassiveCount(unit)) + RModifier +
                            KL.Hemorrhage(unit, PassiveCount(unit) - 1) >= unit.Health + MordeShield(unit))
                        {
                            if (!TargetSelector.IsInvulnerable(unit, TargetSelector.DamageType.True))
                            {
                                if (!unit.HasBuff("kindredrnodeathbuff"))
                                {
                                    KL.Spellbook["R"].CastOnUnit(unit);
                                }
                            }
                        }
                    }

                    if (KL.RDmg(unit, PassiveCount(unit)) + RModifier >= unit.Health +
                        KL.Hemorrhage(unit, 1) + MordeShield(unit))
                    {
                        if (!TargetSelector.IsInvulnerable(unit, TargetSelector.DamageType.True))
                        {
                            if (!unit.HasBuff("kindredrnodeathbuff"))
                            {
                                KL.Spellbook["R"].CastOnUnit(unit);
                            }
                        }
                    }
                }
            }

            if (Config.Item("useca").GetValue <KeyBind>().Active)
            {
                Combo(Config.Item("useq").GetValue <bool>(), Config.Item("usew").GetValue <bool>(),
                      Config.Item("usee").GetValue <bool>(), Config.Item("user").GetValue <bool>());
            }

            if (Config.Item("useha").GetValue <KeyBind>().Active)
            {
                Harass();
            }

            if (Config.Item("caste").GetValue <KeyBind>().Active)
            {
                Orbwalking.Orbwalk(null, Game.CursorPos);
                Combo(false, false, true, false);
            }
        }
예제 #5
0
        internal static void Game_OnUpdate(EventArgs args)
        {
            if (KL.Spellbook["R"].IsReady() && getCheckBoxItem(rmenu, "ksr"))
            {
                foreach (var unit in HeroManager.Enemies.Where(ene => ene.LSIsValidTarget(KL.Spellbook["R"].Range) && !ene.IsZombie))
                {
                    if (unit.CountEnemiesInRange(1200) <= 1 && getCheckBoxItem(rmenu, "ksr1"))
                    {
                        if (KL.RDmg(unit, PassiveCount(unit)) + RModifier +
                            KL.Hemorrhage(unit, PassiveCount(unit) - 1) >= unit.Health + MordeShield(unit))
                        {
                            if (!unit.IsInvulnerable)
                            {
                                if (!unit.HasBuff("kindredrnodeathbuff"))
                                {
                                    KL.Spellbook["R"].CastOnUnit(unit);
                                }
                            }
                        }
                    }

                    if (KL.RDmg(unit, PassiveCount(unit)) + RModifier >= unit.Health +
                        KL.Hemorrhage(unit, 1) + MordeShield(unit))
                    {
                        if (!unit.IsInvulnerable)
                        {
                            if (!unit.HasBuff("kindredrnodeathbuff"))
                            {
                                KL.Spellbook["R"].CastOnUnit(unit);
                            }
                        }
                    }
                }
            }

            if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
            {
                Combo(getCheckBoxItem(cmenu, "useq"), getCheckBoxItem(cmenu, "usew"),
                      getCheckBoxItem(cmenu, "usee"), getCheckBoxItem(rmenu, "user"));
            }

            if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass))
            {
                Harass();
            }

            if (getKeyBindItem(cmenu, "caste"))
            {
                Orbwalker.MoveTo(Game.CursorPos);
                Combo(false, false, true, false);
            }
        }
예제 #6
0
        internal static void Drawing_OnEndScene(EventArgs args)
        {
            if (!Config.Item("drawfill").GetValue <bool>() || KL.Player.IsDead)
            {
                return;
            }

            foreach (var enemy in HeroManager.Enemies.Where(ene => ene.IsValidTarget() && ene.IsHPBarRendered))
            {
                HPi.unit = enemy;
                HPi.drawDmg(KL.RDmg(enemy, PassiveCount(enemy)), new ColorBGRA(255, 255, 0, 90));
            }
        }
예제 #7
0
        internal void Drawing_OnEndScene(EventArgs args)
        {
            if (!Config.Item("drawfill").GetValue <bool>())
            {
                return;
            }

            foreach (var enemy in HeroManager.Enemies.Where(ene => ene.IsValidTarget() && !ene.IsZombie))
            {
                HPi.unit = enemy;
                HPi.drawDmg(KL.RDmg(enemy, enemy.GetBuffCount("dariushemo")), new ColorBGRA(255, 255, 0, 90));
            }
        }
예제 #8
0
        internal static bool CanQ(Obj_AI_Base unit)
        {
            if (!unit.LSIsValidTarget() || unit.IsZombie || !unit.IsInvulnerable)
            {
                return(false);
            }

            if (KL.Player.LSDistance(unit.ServerPosition) < 175 ||
                Utils.GameTimeTickCount - LastGrabTimeStamp < 350)
            {
                return(false);
            }

            if (KL.Spellbook["R"].IsReady() &&
                KL.Player.Mana - KL.Spellbook["Q"].ManaCost < KL.Spellbook["R"].ManaCost)
            {
                return(false);
            }

            if (KL.Spellbook["W"].IsReady() && KL.WDmg(unit) >= unit.Health &&
                unit.LSDistance(KL.Player.ServerPosition) <= 200)
            {
                return(false);
            }

            if (KL.Spellbook["W"].IsReady() && KL.Player.HasBuff("DariusNoxonTactictsONH") &&
                unit.LSDistance(KL.Player.ServerPosition) <= 225)
            {
                return(false);
            }

            if (KL.Player.LSDistance(unit.ServerPosition) > KL.Spellbook["Q"].Range)
            {
                return(false);
            }

            if (KL.Spellbook["R"].IsReady() && KL.Spellbook["R"].IsInRange(unit) &&
                KL.RDmg(unit, PassiveCount(unit)) - KL.Hemorrhage(unit, 1) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.GetAutoAttackDamage(unit) * 2 + KL.Hemorrhage(unit, PassiveCount(unit)) >= unit.Health &&
                KL.Player.LSDistance(unit.ServerPosition) <= 180)
            {
                return(false);
            }

            return(true);
        }
예제 #9
0
        internal static bool CanQ(Obj_AI_Base unit)
        {
            if (!unit.IsValidTarget() || unit.IsZombie)
            {
                return(false);
            }

            if (KL.WDmg(unit) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.Distance(unit.ServerPosition) < 180)
            {
                return(false);
            }

            if (KL.Player.Distance(unit.ServerPosition) > KL.Spellbook["Q"].Range)
            {
                return(false);
            }

            if (KL.RDmg(unit, unit.GetBuffCount("dariushemo")) - KL.Hemorrhage(unit, 5) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.GetAutoAttackDamage(unit) * 2 + KL.Hemorrhage(unit, unit.GetBuffCount("dariushemo")) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.CountEnemiesInRange(200) > 0 && 5 - unit.GetBuffCount("dariushemo") <= 2)
            {
                if (!KL.Player.HasBuff("dariushemomax", true))
                {
                    return(false);
                }
            }

            return(true);
        }
예제 #10
0
        internal static void Game_OnUpdate(EventArgs args)
        {
            Rmodi = Config.Item("rmodi").GetValue <Slider>().Value;

            if (KL.Spellbook["R"].IsReady() && Config.Item("ksr").GetValue <bool>())
            {
                foreach (var unit in HeroManager.Enemies.Where(ene => ene.IsValidTarget(KL.Spellbook["R"].Range) && !ene.IsZombie))
                {
                    if (unit.CountEnemiesInRange(1200) <= 1 && Config.Item("ksr1").GetValue <bool>())
                    {
                        if (KL.RDmg(unit, PassiveCount(unit)) + Rmodi + KL.Hemorrhage(unit, PassiveCount(unit)) >= unit.Health)
                        {
                            if (!TargetSelector.IsInvulnerable(unit, TargetSelector.DamageType.True))
                            {
                                KL.Spellbook["R"].CastOnUnit(unit);
                            }
                        }
                    }

                    if (KL.RDmg(unit, PassiveCount(unit)) + Rmodi >= unit.Health + KL.Hemorrhage(unit, 1))
                    {
                        if (!TargetSelector.IsInvulnerable(unit, TargetSelector.DamageType.True))
                        {
                            KL.Spellbook["R"].CastOnUnit(unit);
                        }
                    }
                }
            }

            switch (Orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo(Config.Item("useq").GetValue <bool>(), Config.Item("usew").GetValue <bool>(),
                      Config.Item("usee").GetValue <bool>(), Config.Item("user").GetValue <bool>());
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Harass();
                break;
            }
        }
예제 #11
0
        internal static bool CanQ(Obj_AI_Base unit)
        {
            if (!unit.IsValidTarget() || unit.IsZombie)
            {
                return(false);
            }

            var rr = unit.GetBuffCount("dariushemo") <= 0 ? 0 : unit.GetBuffCount("dariushemo");

            if (KL.WDmg(unit) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.Distance(unit.ServerPosition) < 200)
            {
                return(false);
            }

            if (KL.Player.Distance(unit.ServerPosition) > KL.Spellbook["Q"].Range)
            {
                return(false);
            }

            if (KL.RDmg(unit, rr) - KL.Hemorrhage(unit, 1) >= unit.Health)
            {
                return(false);
            }

            if (KL.Player.GetAutoAttackDamage(unit) * 2 + KL.Hemorrhage(unit, rr) >= unit.Health)
            {
                if (KL.Player.Distance(unit.ServerPosition) <= 180)
                {
                    return(false);
                }
            }

            return(true);
        }
예제 #12
0
        internal static void Combo(bool useq, bool usew, bool usee, bool user)
        {
            if (useq && KL.Spellbook["Q"].IsReady())
            {
                if (CanQ(TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical)))
                {
                    KL.Spellbook["Q"].Cast();
                }
            }

            if (usew && KL.Spellbook["W"].IsReady())
            {
                var wtarget = TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical);
                if (wtarget.IsValidTarget(KL.Spellbook["W"].Range) && !wtarget.IsZombie)
                {
                    if (wtarget.Distance(KL.Player.ServerPosition) <= 200 && KL.WDmg(wtarget) >= wtarget.Health)
                    {
                        if (Utils.GameTimeTickCount - LastDunkTimeStamp >= 500)
                        {
                            KL.Spellbook["W"].Cast();
                        }
                    }
                }
            }

            if (usee && KL.Spellbook["E"].IsReady())
            {
                var etarget = TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical);
                if (etarget.IsValidTarget())
                {
                    if (etarget.Distance(KL.Player.ServerPosition) > 250)
                    {
                        if (KL.Player.CountAlliesInRange(1000) >= 1)
                        {
                            KL.Spellbook["E"].Cast(etarget.ServerPosition);
                        }

                        if (KL.RDmg(etarget, PassiveCount(etarget)) - KL.Hemorrhage(etarget, 1) >= etarget.Health)
                        {
                            KL.Spellbook["E"].Cast(etarget.ServerPosition);
                        }

                        if (KL.Spellbook["Q"].IsReady() || KL.Spellbook["W"].IsReady())
                        {
                            KL.Spellbook["E"].Cast(etarget.ServerPosition);
                        }

                        if (KL.Player.GetAutoAttackDamage(etarget) + KL.Hemorrhage(etarget, 3) * 3 >= etarget.Health)
                        {
                            KL.Spellbook["E"].Cast(etarget.ServerPosition);
                        }
                    }
                }
            }

            if (user && KL.Spellbook["R"].IsReady())
            {
                var unit = TargetSelector.GetTarget(KL.Spellbook["E"].Range, TargetSelector.DamageType.Physical);

                if (unit.IsValidTarget(KL.Spellbook["R"].Range) && !unit.IsZombie)
                {
                    if (!unit.HasBuffOfType(BuffType.Invulnerability) && !unit.HasBuffOfType(BuffType.SpellShield))
                    {
                        if (KL.RDmg(unit, PassiveCount(unit)) + RModifier >= unit.Health +
                            KL.Hemorrhage(unit, 1) + MordeShield(unit))
                        {
                            if (!TargetSelector.IsInvulnerable(unit, TargetSelector.DamageType.True))
                            {
                                if (!unit.HasBuff("kindredrnodeathbuff"))
                                {
                                    KL.Spellbook["R"].CastOnUnit(unit);
                                }
                            }
                        }
                    }
                }
            }
        }