Exemplo n.º 1
0
        private static float ComboDamage(AIHeroClient target)
        {
            if (target != null)
            {
                float TotalDamage = 0;

                if (DemSpells.Q.IsLearned && DemSpells.Q.IsReady())
                {
                    TotalDamage += QDamage(target);
                }

                if (DemSpells.W.IsLearned && DemSpells.W.IsReady())
                {
                    TotalDamage += WDamage(target);
                }

                if (DemSpells.E.IsLearned && DemSpells.E.IsReady())
                {
                    TotalDamage += (float)((myhero.GetAutoAttackDamage(target) * (int)slider(combo, "AAMIN")) + (new float[] { 0, 1.4f, 1.55f, 1.7f, 1.85f, 2 }[DemSpells.E.Level] *myhero.TotalAttackDamage));
                }

                if (DemSpells.R.IsLearned && DemSpells.R.IsReady())
                {
                    TotalDamage += (float)PassiveManager.GetPassiveDamage(target, 4);
                }
                else
                {
                    TotalDamage += (float)PassiveManager.GetPassiveDamage(target, PassiveManager.GetPassiveCount(target));
                }

                if (tiamat.IsOwned() && tiamat.IsReady() && tiamat.IsInRange(target.Position))
                {
                    TotalDamage += myhero.GetItemDamage(target, tiamat.Id);
                }

                if (rhydra.IsOwned() && rhydra.IsReady() && rhydra.IsInRange(target.Position))
                {
                    TotalDamage += myhero.GetItemDamage(target, rhydra.Id);
                }

                /*  if (thydra.IsOwned() && thydra.IsReady())
                 * { TotalDamage += myhero.GetItemDamage(target, thydra.Id); }*/

                if (cutl.IsOwned() && cutl.IsReady() && cutl.IsInRange(target.Position))
                {
                    TotalDamage += myhero.GetItemDamage(target, cutl.Id);
                }

                if (blade.IsOwned() && blade.IsReady() && blade.IsInRange(target.Position))
                {
                    TotalDamage += myhero.GetItemDamage(target, blade.Id);
                }

                return(TotalDamage);
            }
            return(0);
        }
Exemplo n.º 2
0
        private static void Combo()
        {
            var target = TargetSelector.GetTarget(1200, DamageType.Physical, Player.Instance.Position);

            if (target != null && target.IsValidTarget() && !target.IsInvulnerable)
            {
                var WPred = DemSpells.W.GetPrediction(target);

                PassiveManager.castAutoAttack(target);

                ItemManager(target);

                if (check(combo, "CQ") && DemSpells.Q.IsReady() && DemSpells.Q.IsInRange(target.Position))
                {
                    if (target.IsUnderHisturret())
                    {
                        return;
                    }

                    switch (comb(pred, "QPREDMODE"))
                    {
                    case 0:
                        PassiveManager.castQhelper(target);
                        break;

                    case 1:
                        DemSpells.Q.Cast(target.Position);
                        break;
                    }
                }

                if (check(combo, "CW") && DemSpells.W.IsReady() && DemSpells.W.IsInRange(target.Position))
                {
                    switch (comb(pred, "WPREDMODE"))
                    {
                    case 0:
                        if (slider(pred, "WPred") <= WPred.HitChancePercent)
                        {
                            DemSpells.W.Cast(WPred.CastPosition);
                        }
                        break;

                    case 1:
                        DemSpells.W.Cast(target.Position);
                        break;
                    }
                }

                if (check(combo, "CE") && DemSpells.E.IsReady() && target.Distance(myhero.Position) < DemSpells.E.Range)
                {
                    DemSpells.E.Cast();
                }

                if (check(combo, "CR") && DemSpells.R.IsReady() && target.Distance(myhero.Position) < DemSpells.R.Range &&
                    myhero.HealthPercent >= slider(combo, "CRMIN") && ComboDamage(target) > target.Health)
                {
                    if ((ComboDamage(target) - PassiveManager.GetPassiveDamage(target, 4) > target.Health) ||
                        (ignt.IsReady() && myhero.GetSummonerSpellDamage(target, DamageLibrary.SummonerSpells.Ignite) > target.Health))
                    {
                        return;
                    }

                    if (check(combo, "CRTURRET"))
                    {
                        var ClosestTurret = EntityManager.Turrets.Enemies.Where(x => x.IsTargetable).OrderBy(x => x.Distance(myhero.Position)).FirstOrDefault();

                        if (ClosestTurret.Distance(target.Position) > 900)
                        {
                            DemSpells.R.Cast(target);
                        }
                    }
                    else
                    {
                        DemSpells.R.Cast(target);
                    }
                }

                if (check(combo, "Cignt") && ignt.IsReady() && ignt.IsInRange(target.Position))
                {
                    if (target.Health > ComboDamage(target) && myhero.GetSummonerSpellDamage(target, DamageLibrary.SummonerSpells.Ignite) > target.Health &&
                        !check(misc, "autoign"))
                    {
                        ignt.Cast(target);
                    }
                    else if (target.Health > ComboDamage(target))
                    {
                        if ((ComboDamage(target) + (myhero.GetSummonerSpellDamage(target, DamageLibrary.SummonerSpells.Ignite) - 5)) > target.Health)
                        {
                            ignt.Cast(target);
                        }
                    }
                }
            }
        }