예제 #1
0
파일: Program.cs 프로젝트: sadnecc/CHportcn
        private static void Orbwalker_OnPreAttack(AttackableUnit target, Orbwalker.PreAttackArgs args)
        {
            _axeDropObjectDataList.RemoveAll(x => !x.Object.IsValid);

            if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
            {
                if (args.Target.Type == GameObjectType.AIHeroClient)
                {
                    if (useQ)
                    {
                        if (AxeCount < 2)
                        {
                            if (Q.IsReady())
                            {
                                Q.Cast();
                            }
                        }
                    }
                }
            }
            else if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass))
            {
                if (useQH)
                {
                    if (myHero.IsManaPercentOkay(manaH))
                    {
                        if (AxeCount < 2)
                        {
                            if (Q.IsReady())
                            {
                                Q.Cast();
                            }
                        }
                    }
                }
            }
            else if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) ||
                     Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear))
            {
                if (EntityManager.MinionsAndMonsters.GetLaneMinions().Any(x => x.NetworkId == args.Target.NetworkId))
                {
                    if (useQLC)
                    {
                        if (myHero.IsManaPercentOkay(manaLC))
                        {
                            if (AxeCount < 2)
                            {
                                if (Q.IsReady())
                                {
                                    Q.Cast();
                                }
                            }
                        }
                    }
                }

                if (
                    EntityManager.MinionsAndMonsters.GetJungleMonsters()
                    .Any(x => x.NetworkId == args.Target.NetworkId))
                {
                    if (useQJG)
                    {
                        if (myHero.IsManaPercentOkay(manaJG))
                        {
                            if (AxeCount < 2)
                            {
                                if (Q.IsReady())
                                {
                                    Q.Cast();
                                }
                            }
                        }
                    }
                }
            }
        }
예제 #2
0
        static void Combo()
        {
            var target = EloBuddy.SDK.TargetSelector.GetTarget(Q.Range, EloBuddy.DamageType.Magical);

            if (EloBuddy.SDK.Extensions.CountEnemiesInRange(EloBuddy.ObjectManager.Player, Q.Range) <= 2)
            {
                target = EloBuddy.SDK.TargetSelector.GetTarget(Q.Range, EloBuddy.DamageType.Magical);
            }
            else if (2 < EloBuddy.SDK.Extensions.CountEnemiesInRange(EloBuddy.ObjectManager.Player, Q.Range))
            {
                target = EloBuddy.SDK.TargetSelector.GetTarget(W.Range, EloBuddy.DamageType.Magical);
            }
            if (!EloBuddy.Player.Instance.HasBuff("RyzePassiveStack") && !EloBuddy.Player.HasBuff("RyzePassiveCharged"))
            {
                if (!E.IsReady())
                {
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance)
                    {
                        Q.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB)
                    {
                        W.Cast(target);
                    }
                }
                if (E.IsReady())
                {
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, E.Range) && ESpellCB)
                    {
                        E.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB)
                    {
                        W.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance)
                    {
                        Q.Cast(target);
                    }
                }
            }
            if (EloBuddy.Player.Instance.HasBuff("RyzePassiveStack"))
            {
                if (EloBuddy.Player.Instance.GetBuff("RyzePassiveStack").Count == 1)
                {
                    if (R.IsReady() && RSpellCB)
                    {
                        if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && !(!Q.IsReady() && E.IsReady()) || !(Q.IsReady() && !E.IsReady()))
                        {
                            R.Cast();
                        }
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, E.Range) && E.IsReady() && ESpellCB)
                    {
                        E.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance)
                    {
                        Q.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB)
                    {
                        W.Cast(target);
                    }
                }
                if (EloBuddy.Player.GetBuff("RyzePassiveStack").Count == 2)
                {
                    if (R.IsReady() && RSpellCB)
                    {
                        if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && !Q.IsReady() && E.IsReady())
                        {
                            R.Cast();
                        }
                        if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && !E.IsReady())
                        {
                            R.Cast();
                        }
                        if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && !Q.IsReady() && !E.IsReady() && W.IsReady())
                        {
                            R.Cast();
                        }
                    }

                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance)
                    {
                        Q.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, E.Range) && E.IsReady() && ESpellCB)
                    {
                        E.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB)
                    {
                        W.Cast(target);
                    }
                }
                if (EloBuddy.Player.GetBuff("RyzePassiveStack").Count == 3)
                {
                    if (R.IsReady() && RSpellCB)
                    {
                        if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady())
                        {
                            R.Cast();
                        }
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance)
                    {
                        Q.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, E.Range) && E.IsReady() && ESpellCB)
                    {
                        E.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB && !Q.IsReady() && !E.IsReady() && !R.IsReady())
                    {
                        W.Cast(target);
                    }
                }
                if (EloBuddy.Player.GetBuff("RyzePassiveStack").Count == 4)
                {
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB)
                    {
                        W.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && !W.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance)
                    {
                        Q.Cast(target);
                    }
                    if (EloBuddy.SDK.Extensions.IsValidTarget(target, E.Range) && E.IsReady() && !W.IsReady() && ESpellCB)
                    {
                        E.Cast(target);
                    }
                }
            }
            if (EloBuddy.Player.HasBuff("RyzePassiveCharged"))
            {
                if (EloBuddy.SDK.Extensions.IsValidTarget(target, W.Range) && W.IsReady() && WSpellCB)
                {
                    W.Cast(target);
                }
                if (EloBuddy.SDK.Extensions.IsValidTarget(target, Q.Range) && Q.IsReady() && QSpellCB && EloBuddy.SDK.Enumerations.HitChance.High <= Q.GetPrediction(target).HitChance&& !W.IsReady())
                {
                    Q.Cast(target);
                }
                if (EloBuddy.SDK.Extensions.IsValidTarget(target, E.Range) && E.IsReady() && ESpellCB && !W.IsReady())
                {
                    E.Cast(target);
                }
            }
        }