Esempio n. 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);
                            }
                        }
                    }
                }
            }
        }
Esempio n. 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);
        }
Esempio n. 3
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);
        }
Esempio n. 4
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);
        }
Esempio n. 5
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);
        }
Esempio n. 6
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);
                                }
                            }
                        }
                    }
                }
            }
        }