예제 #1
0
            public static void Harass()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.HarassMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.HarassMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var target = TargetSelector.GetTarget(SpellManager.Q.Range + 150);

                    if (target != null && MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                    {
                        if (target.IsValidTarget(SpellManager.Q.Range))
                        {
                            var getPrediction = SpellManager.Q.GetPrediction(target);

                            if (getPrediction.Hitchance >= HitChance.Medium)
                            {
                                SpellManager.Q.Cast(getPrediction.CastPosition);
                            }
                        }
                        else if (target.DistanceToPlayer() >= SpellManager.Q.Range)
                        {
                            var nearestMinion = GameObjects.EnemyMinions.Where(x => x.DistanceToPlayer() <= target.DistanceToPlayer() && target.Distance(x) < 150).OrderBy(x => x.DistanceToPlayer()).FirstOrDefault();

                            if (nearestMinion != null && nearestMinion.IsValidTarget(SpellManager.Q.Range))
                            {
                                SpellManager.Q.Cast(nearestMinion.Position);
                            }
                        }
                    }
                }
            }
예제 #2
0
            public static void LastHit()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LastHitMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LastHitMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMinion && x.Health < SpellManager.Q.GetDamage(x)).OrderBy(x => x.DistanceToPlayer()).Cast <AIBaseClient>();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = minions.FirstOrDefault();

                    if (firstMinion != null)
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(firstMinion, false);

                        if (getPrediction.Hitchance >= HitChance.Medium)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                        }
                    }
                }
            }
예제 #3
0
 public static void LastHit()
 {
     if (ManaManager.HaveNoEnoughMana(MenuManager.LastHitMenu["MinMana"].GetValue <MenuSlider>()))
     {
         return;
     }
 }
예제 #4
0
            public static void Harass()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.HarassMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                var target = TargetSelector.GetTarget(SpellManager.Q.Range);

                if (target == null || !MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                {
                    return;
                }

                if (MenuManager.HarassMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var hitchance = UtilityManager.GetHitChance(MenuManager.HarassMenu["QHitChance"].GetValue <MenuList>());

                    if (target.IsValidTarget(SpellManager.Q.Range))
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(target, true);

                        if (SpellManager.Q.SData.Name == "AurelionSolQ")
                        {
                            if (getPrediction.Hitchance >= hitchance && ComboQCasted)
                            {
                                SpellManager.Q.Cast(getPrediction.CastPosition);
                                ComboQCasted = false;
                                DelayAction.Add(2000, () => ComboQCasted = true);
                            }
                        }
                        else if (SpellManager.Q.SData.Name == "AurelionSolQCancelButton")
                        {
                            if (AurelionSolQMissile != null && target.IsValidTarget(130f, false, AurelionSolQMissile.Position))
                            {
                                SpellManager.Q.Cast();
                            }
                        }
                    }
                }
                if (MenuManager.HarassMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady())
                {
                    if (Misc.IsWActive)
                    {
                        if (target.IsValidTarget(420) || !target.IsValidTarget(800))
                        {
                            SpellManager.W.Cast();
                        }
                    }
                    else if (!Misc.IsWActive)
                    {
                        if (target.IsValidTarget(SpellManager.W2.Range) && !target.IsValidTarget(420))
                        {
                            SpellManager.W.Cast();
                        }
                    }
                }
            }
            public static void JungleClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.JungleClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.JungleClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMonster).OrderBy(x => x.MaxHealth).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var getPrediction = SpellManager.E.GetPrediction(mobs.FirstOrDefault());

                    if (getPrediction.Hitchance >= HitChance.Medium)
                    {
                        SpellManager.E.Cast(getPrediction.CastPosition);
                    }
                }
                if (MenuManager.JungleClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.W.Range) && x.IsMonster).OrderBy(x => x.DistanceToPlayer()).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var getPrediction = SpellManager.W.GetPrediction(mobs.FirstOrDefault());

                    if (getPrediction.Hitchance >= HitChance.Medium)
                    {
                        SpellManager.W.Cast(getPrediction.CastPosition);
                    }
                }
                if (MenuManager.JungleClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.Q.Range + 250) && x.IsMonster);

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var castPosition = objPlayer.Position.Extend(mobs.FirstOrDefault().Position + 150, +300);

                    if (objPlayer.GetBuffCount("heimerdingerturretready") != 0)
                    {
                        SpellManager.Q.Cast(castPosition);
                    }
                }
            }
            public static void Harass()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.HarassMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.HarassMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var target = TargetSelector.GetTarget(SpellManager.E.Range);

                    if (!MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                    {
                        return;
                    }

                    if (target.IsValidTarget(SpellManager.E.Range) && target != null)
                    {
                        var getPrediction = SpellManager.E.GetPrediction(target);

                        SpellManager.E.Cast(getPrediction.CastPosition);
                    }
                }
                if (MenuManager.HarassMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var target = TargetSelector.GetTarget(SpellManager.Q.Range + 300);

                    if (!MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                    {
                        return;
                    }

                    if (target.IsValidTarget(SpellManager.Q.Range + 300) && target != null)
                    {
                        SpellManager.Q.Cast(objPlayer.Position.Extend(target.Position, +300));
                    }
                }
                if (MenuManager.HarassMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady() && !objPlayer.HasBuff("HeimerdingerR") && !SpellManager.E.IsReady())
                {
                    var target = TargetSelector.GetTarget(SpellManager.W.Range);

                    if (!MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                    {
                        return;
                    }

                    if (target.IsValidTarget(SpellManager.W.Range) && target != null)
                    {
                        var getPrediction = SpellManager.W.GetPrediction(target);

                        SpellManager.W.Cast(getPrediction.CastPosition);
                    }
                }
            }
예제 #7
0
            public static void LaneClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range - 200) && x.IsMinion).ToList();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    var circularFarmLocation = SpellManager.Q.GetCircularFarmLocation(minions, SpellManager.Q.Width);

                    if (SpellManager.Q.SData.Name == "AurelionSolQ")
                    {
                        if (circularFarmLocation.MinionsHit >= MenuManager.LaneClearMenu["QHits"].GetValue <MenuSlider>().Value&& LaneClearQCasted)
                        {
                            SpellManager.Q.Cast(circularFarmLocation.Position);
                            LaneClearQCasted = false;
                            DelayAction.Add(2000, () => LaneClearQCasted = true);
                        }
                    }
                    else if (SpellManager.Q.SData.Name == "AurelionSolQCancelButton")
                    {
                        if (AurelionSolQMissile != null && AurelionSolQMissile.Position.Distance(circularFarmLocation.Position) < 100)
                        {
                            SpellManager.Q.Cast();
                        }
                    }
                }
                if (MenuManager.LaneClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.W2.Range + 20) && x.IsMinion).ToList();

                    if (minions.Count() <= 2 && Misc.IsWActive && (minions.FirstOrDefault().IsValidTarget(325) || !minions.FirstOrDefault().IsValidTarget(625)))
                    {
                        SpellManager.W2.Cast();
                    }
                    if (minions.Count() > 2 && !Misc.IsWActive && minions.FirstOrDefault().IsValidTarget(SpellManager.W2.Range) && !minions.FirstOrDefault().IsValidTarget(325))
                    {
                        var getCircularFarmLocation = SpellManager.W2.GetCircularFarmLocation(minions, SpellManager.W2.Range);

                        if (getCircularFarmLocation.MinionsHit >= MenuManager.LaneClearMenu["WHits"].GetValue <MenuSlider>().Value)
                        {
                            SpellManager.W.Cast();
                        }
                    }
                }
            }
예제 #8
0
            public static void JungleClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.JungleClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.JungleClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMonster).OrderByDescending(x => x.Health);

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var firstMob = mobs.FirstOrDefault();

                    if (firstMob != null && firstMob.Health > objPlayer.GetAutoAttackDamage(firstMob))
                    {
                        SpellManager.Q.CastOnUnit(firstMob);
                    }
                }
                if (MenuManager.JungleClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady() && objPlayer.ManaPercent >= MenuManager.JungleClearMenu["WMana"].GetValue <MenuSlider>().Value)
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMonster);

                    if (mobs.Count() > 0)
                    {
                        SpellManager.W.CastOnUnit(objPlayer);
                    }
                }
                if (MenuManager.JungleClearMenu["R"].GetValue <MenuBool>().Enabled&& SpellManager.R.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.R.Range) && x.IsMonster).OrderBy(x => x.MaxHealth);

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var firstMob = mobs.FirstOrDefault();

                    if (firstMob != null)
                    {
                        var pos = firstMob.Position.Extend(objPlayer.Position, +200);

                        if (SpellManager.R.Ammo >= 1 && !Misc.IsShroomed(pos, 150) && Variables.GameTimeTickCount - LastR > 5000 && !firstMob.SkinName.Contains("Crab") && firstMob.Health > SpellManager.Q.GetDamage(firstMob))
                        {
                            SpellManager.R.Cast(pos);
                        }
                    }
                }
            }
예제 #9
0
            public static void JungleClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.JungleClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.JungleClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var mob = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMonster).Cast <AIBaseClient>().MinBy(x => x.MaxHealth);

                    if (mob == null)
                    {
                        return;
                    }

                    var getPrediction = SpellManager.Q.GetPrediction(mob, true);

                    if (SpellManager.Q.SData.Name == "AurelionSolQ")
                    {
                        if (getPrediction.Hitchance >= HitChance.Medium && JungleclearQCasted)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                            JungleclearQCasted = false;
                            DelayAction.Add(2000, () => JungleclearQCasted = true);
                        }
                    }
                    else if (SpellManager.Q.SData.Name == "AurelionSolQCancelButton")
                    {
                        if (AurelionSolQMissile != null && AurelionSolQMissile.Position.Distance(getPrediction.CastPosition) < 100)
                        {
                            SpellManager.Q.Cast();
                        }
                    }
                }
                if (MenuManager.JungleClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady())
                {
                    var mob = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.W2.Range) && x.IsMonster).Cast <AIBaseClient>().MinBy(x => x.MaxHealth);

                    if (mob == null)
                    {
                        return;
                    }

                    if (mob.IsValidTarget(SpellManager.W2.Range) && !mob.IsValidTarget(420) && !Misc.IsWActive)
                    {
                        SpellManager.W.Cast();
                    }
                    else if (Misc.IsWActive && mob.IsValidTarget(420))
                    {
                        SpellManager.W.Cast();
                    }
                }
            }
예제 #10
0
            public static void LaneClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var getMinions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(Misc.RealQRange()) && x.IsMinion()).Cast <AIBaseClient>().OrderByDescending(x => x.Health);

                    if (getMinions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = getMinions.FirstOrDefault();

                    if (getMinions.Count() >= MenuManager.LaneClearMenu["QHits"].GetValue <MenuSlider>().Value)
                    {
                        if (Misc.IsQSkillshot())
                        {
                            var getPrediction = SpellManager.Q.GetPrediction(firstMinion, false);

                            if (getPrediction.Hitchance >= HitChance.High && getPrediction != null)
                            {
                                SpellManager.Q.Cast(getPrediction.CastPosition);
                            }
                        }
                        else
                        {
                            SpellManager.Q.CastOnUnit(firstMinion);
                        }
                    }
                    else if (!Misc.IsQSkillshot())
                    {
                        SpellManager.Q.CastOnUnit(firstMinion);
                    }
                }
                if (MenuManager.LaneClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady())
                {
                    var getMinions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMinion).OrderByDescending(x => x.MaxHealth).Cast <AIBaseClient>();

                    if (getMinions.Count() == 0)
                    {
                        return;
                    }

                    SpellManager.E.CastOnUnit(getMinions.MinBy(x => x.MaxHealth));
                }
            }
예제 #11
0
            public static void LaneClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMinion).OrderBy(x => x.Health).Cast <AIBaseClient>();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = minions.FirstOrDefault();

                    if (firstMinion != null)
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(firstMinion, true);

                        if (getPrediction.Hitchance >= HitChance.Medium)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                        }
                    }
                }
                if (MenuManager.LaneClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.W.Range) && x.IsMinion).OrderBy(x => x.Name.Contains("Super")).ToList();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    if (minions.Count() >= MenuManager.LaneClearMenu["WMinHits"].GetValue <MenuSlider>().Value)
                    {
                        SpellManager.W.CastOnUnit(objPlayer);
                    }
                    else if (minions.FirstOrDefault().Name.Contains("Super"))
                    {
                        SpellManager.W.CastOnUnit(objPlayer);
                    }
                }
            }
예제 #12
0
            public static void Harass()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.HarassMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.HarassMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var target = TargetSelector.GetTarget(SpellManager.Q.Range);

                    if (target != null && target.IsValidTarget(SpellManager.Q.Range) && MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                    {
                        SpellManager.Q.CastOnUnit(target);
                    }
                }
            }
예제 #13
0
            public static void LaneClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMinion && !x.IsDead).OrderBy(x => x.Health).Cast <AIBaseClient>().ToList();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = minions.FirstOrDefault();

                    if (firstMinion.Health >= objPlayer.GetAutoAttackDamage(firstMinion) * 2 && firstMinion.Name.Contains("Super"))
                    {
                        SpellManager.Q.CastOnUnit(firstMinion);
                    }
                }
                if (MenuManager.LaneClearMenu["R"].GetValue <MenuBool>().Enabled&& SpellManager.R.IsReady())
                {
                    if (MenuManager.LaneClearMenu["RSave"].GetValue <MenuSlider>().Value >= SpellManager.R.Ammo)
                    {
                        return;
                    }

                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.R.Range) && x.IsMinion && !x.IsDead).OrderBy(x => x.Health).ToList();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    var bestCircularFarmLocation = SpellManager.R.GetCircularFarmLocation(minions);

                    if (MenuManager.LaneClearMenu["RMinHits"].GetValue <MenuSlider>().Value <= bestCircularFarmLocation.MinionsHit && !Misc.IsShroomed(bestCircularFarmLocation.Position.ToVector3()) && Variables.GameTimeTickCount - LastR > 4000)
                    {
                        SpellManager.R.Cast(bestCircularFarmLocation.Position);
                    }
                }
            }
예제 #14
0
            public static void JungleClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.JungleClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.JungleClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMonster && !x.IsDead).OrderBy(x => x.MaxHealth).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var firstMob = mobs.FirstOrDefault();

                    if (firstMob != null && firstMob.IsValidTarget(SpellManager.Q.Range))
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(firstMob, true);

                        if (getPrediction.Hitchance >= HitChance.Medium)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                        }
                    }
                }
                if (MenuManager.JungleClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMonster && !x.IsDead).OrderBy(x => x.MaxHealth).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var firstMob = mobs.FirstOrDefault();

                    if (firstMob != null && firstMob.IsValidTarget(SpellManager.E.Range) && Misc.WallCollision(objPlayer, firstMob))
                    {
                        SpellManager.E.CastOnUnit(firstMob);
                    }
                }
            }
예제 #15
0
            public static void LaneClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMinion && !x.IsDead).OrderBy(x => x.Health).Cast <AIBaseClient>().ToList();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    var getLineFarmLocation = SpellManager.Q.GetLineFarmLocation(minions);

                    if (getLineFarmLocation.MinionsHit >= MenuManager.LaneClearMenu["QMinHits"].GetValue <MenuSlider>().Value)
                    {
                        SpellManager.Q.Cast(getLineFarmLocation.Position);
                    }
                }
                if (MenuManager.LaneClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady())
                {
                    var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMinion && !x.IsDead).OrderBy(x => x.MaxHealth).Cast <AIBaseClient>();

                    if (minions.Count() == 0)
                    {
                        return;
                    }

                    foreach (var minion in minions)
                    {
                        if (minion != null && minion.IsValidTarget(SpellManager.E.Range) && !minion.IsUnderEnemyTurret())
                        {
                            if (Misc.WallCollision(objPlayer, minion))
                            {
                                SpellManager.E.CastOnUnit(minion);
                            }
                        }
                    }
                }
            }
예제 #16
0
            public static void Harass()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.HarassMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.HarassMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var target = TargetSelector.GetTarget(Misc.RealQRange());

                    if (target != null && MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled)
                    {
                        if (Misc.IsQSkillshot())
                        {
                            var getPrediction = SpellManager.Q.GetPrediction(target, false);

                            if (getPrediction.Hitchance >= HitChance.High && target.IsValidTarget(Misc.RealQRange()))
                            {
                                SpellManager.Q.Cast(getPrediction.CastPosition);
                            }
                        }
                        else
                        {
                            if (target.IsValidTarget(Misc.RealQRange()))
                            {
                                SpellManager.Q.CastOnUnit(target);
                            }
                        }
                    }
                }
                if (MenuManager.HarassMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady())
                {
                    var target = TargetSelector.GetTarget(SpellManager.E.Range);

                    if (target != null && MenuManager.HarassMenu[target.CharacterName.ToLower()].GetValue <MenuBool>().Enabled&& target.IsValidTarget(SpellManager.E.Range))
                    {
                        SpellManager.E.CastOnUnit(target);
                    }
                }
            }
예제 #17
0
            public static void Harass()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.HarassMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.HarassMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var target = TargetSelector.GetTarget(SpellManager.Q.Range);

                    if (target != null && target.IsValidTarget(SpellManager.Q.Range))
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(target, true);

                        if (getPrediction.Hitchance >= HitChance.High)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                        }
                    }
                }
            }
예제 #18
0
            public static void JungleClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.JungleClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.JungleClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady())
                {
                    var getMinions = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.W.Range) && x.IsMonster && !Misc.IsAllured(x)).OrderByDescending(x => x.Health).Cast <AIBaseClient>();

                    if (getMinions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = getMinions.FirstOrDefault();

                    if (UtilityManager.JungleList.Contains(firstMinion.SkinName) && MenuManager.JungleWhiteList[firstMinion.SkinName].GetValue <MenuBool>().Enabled&& firstMinion.Health > SpellManager.Q.GetDamage(firstMinion))
                    {
                        SpellManager.W.CastOnUnit(firstMinion);
                    }
                }
                if (MenuManager.JungleClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady())
                {
                    var getMinions = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMonster).OrderBy(x => Misc.IsFullyAllured(x)).Cast <AIBaseClient>();

                    if (getMinions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = getMinions.FirstOrDefault();

                    if (Misc.IsAllured(firstMinion) && !Misc.IsFullyAllured(firstMinion))
                    {
                        return;
                    }

                    SpellManager.E.CastOnUnit(firstMinion);
                }
                if (MenuManager.JungleClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var getMinions = GameObjects.Jungle.Where(x => x.IsValidTarget(Misc.RealQRange()) && x.IsMonster).OrderBy(x => x.Health).Cast <AIBaseClient>();

                    if (getMinions.Count() == 0)
                    {
                        return;
                    }

                    var firstMinion = getMinions.FirstOrDefault();

                    if (Misc.IsAllured(firstMinion) && !Misc.IsFullyAllured(firstMinion))
                    {
                        return;
                    }

                    if (Misc.IsQSkillshot())
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(firstMinion, false);

                        if (getPrediction.Hitchance >= HitChance.Medium)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                        }
                    }
                    else
                    {
                        SpellManager.Q2.CastOnUnit(firstMinion);
                    }
                }
            }
예제 #19
0
            public static void JungleClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.JungleClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.JungleClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMonster).OrderBy(x => x.DistanceToPlayer()).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var firstMob = mobs.FirstOrDefault();

                    if (firstMob != null)
                    {
                        var getPrediction = SpellManager.Q.GetPrediction(firstMob, false);

                        if (getPrediction.Hitchance >= HitChance.Medium)
                        {
                            SpellManager.Q.Cast(getPrediction.CastPosition);
                        }
                    }
                }
                if (MenuManager.JungleClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.W.Range + 150) && x.IsMonster).OrderBy(x => x.MaxHealth).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    if (mobs.All(x => x.IsValidTarget(SpellManager.W.Range)))
                    {
                        SpellManager.W.CastIfWillHit(objPlayer, mobs.Count());
                    }
                }
                if (MenuManager.JungleClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady())
                {
                    var mobs = GameObjects.Jungle.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMonster).OrderBy(x => x.Health).Cast <AIBaseClient>();

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var firstMob = mobs.FirstOrDefault();

                    if (firstMob != null && !SpellManager.Q.IsReady() && !SpellManager.W.IsReady())
                    {
                        if (SpellManager.E.ToggleState == 1)
                        {
                            var getPrediction = SpellManager.E.GetPrediction(firstMob, true);

                            if (getPrediction.Hitchance >= HitChance.Medium)
                            {
                                SpellManager.E.Cast(getPrediction.CastPosition);
                            }
                        }
                        else if (SpellManager.E.ToggleState == 2 && MenuManager.JungleClearMenu["E2"].GetValue <MenuBool>().Enabled&& Misc.IsSafe(missileClient.EndPosition, 150))
                        {
                            if (firstMob.Distance(missileClient.EndPosition) <= 600)
                            {
                                IsJumping = true;
                            }
                        }
                    }
                }
            }
예제 #20
0
            public static void OnAction(object sender, OrbwalkerActionArgs args)
            {
                switch (args.Type)
                {
                case OrbwalkerType.BeforeAttack:
                    if (Orbwalker.ActiveMode == OrbwalkerMode.LaneClear && MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& Methods.SpellFarm)
                    {
                        if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                        {
                            return;
                        }

                        var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMinion).OrderBy(x => x.Health);

                        if (minions.Count() == 0)
                        {
                            return;
                        }

                        var orbTarget = args.Target;

                        if (orbTarget.Type == GameObjectType.AIMinionClient)
                        {
                            foreach (var minion in minions.Where(x => x.Health <= SpellManager.Q.GetDamage(x) && x.NetworkId != orbTarget.NetworkId && x.IsValidTarget(SpellManager.Q.Range)))
                            {
                                SpellManager.Q.CastOnUnit(minion);
                            }
                        }
                    }
                    if (Orbwalker.ActiveMode == OrbwalkerMode.LastHit && MenuManager.LastHitMenu["Q"].GetValue <MenuBool>().Enabled&& Methods.SpellFarm)
                    {
                        if (ManaManager.HaveNoEnoughMana(MenuManager.LastHitMenu["MinMana"].GetValue <MenuSlider>()))
                        {
                            return;
                        }

                        var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range) && x.IsMinion).OrderBy(x => x.Health);

                        if (minions.Count() == 0)
                        {
                            return;
                        }

                        var orbTarget = args.Target;

                        if (orbTarget.Type == GameObjectType.AIMinionClient)
                        {
                            foreach (var minion in minions.Where(x => x.Health <= SpellManager.Q.GetDamage(x) && x.NetworkId != orbTarget.NetworkId && x.IsValidTarget(SpellManager.Q.Range)))
                            {
                                SpellManager.Q.CastOnUnit(minion);
                            }
                        }
                    }
                    break;

                case OrbwalkerType.AfterAttack:
                    if (Orbwalker.ActiveMode == OrbwalkerMode.Combo && SpellManager.Q.IsReady() && MenuManager.ComboMenu["Q"].GetValue <MenuBool>().Enabled)
                    {
                        var target = (AIBaseClient)args.Target;

                        if (target != null)
                        {
                            switch (MenuManager.ComboMenu["QMode"].GetValue <MenuList>().SelectedValue)
                            {
                            case "Normal":
                                if (MenuManager.ComboMenu["QPrioritizeADC"].GetValue <MenuBool>().Enabled&& UtilityManager.Marksmans.Contains(target.SkinName) && target.IsValidTarget(SpellManager.Q.Range))
                                {
                                    SpellManager.Q.CastOnUnit(target);
                                }
                                else if (target.IsValidTarget(SpellManager.Q.Range))
                                {
                                    SpellManager.Q.CastOnUnit(target);
                                }
                                break;

                            case "Only AA Range":
                                if (MenuManager.ComboMenu["QPrioritizeADC"].GetValue <MenuBool>().Enabled&& UtilityManager.Marksmans.Contains(target.SkinName) && target.IsValidTarget(objPlayer.GetRealAutoAttackRange()))
                                {
                                    SpellManager.Q.CastOnUnit(target);
                                }
                                else if (target.IsValidTarget(objPlayer.GetRealAutoAttackRange()))
                                {
                                    SpellManager.Q.CastOnUnit(target);
                                }
                                break;
                            }
                        }
                    }
                    break;
                }
            }
예제 #21
0
            public static void LaneClear()
            {
                if (ManaManager.HaveNoEnoughMana(MenuManager.LaneClearMenu["MinMana"].GetValue <MenuSlider>()))
                {
                    return;
                }

                if (MenuManager.LaneClearMenu["Q"].GetValue <MenuBool>().Enabled&& SpellManager.Q.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var mobs = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.Q.Range + 250) && x.IsMinion);

                    if (mobs.Count() < 2)
                    {
                        return;
                    }

                    if (objPlayer.GetBuffCount("heimerdingerturretready") > 1)
                    {
                        SpellManager.Q.Cast(objPlayer.Position.Extend(mobs.FirstOrDefault().Position + 150, +300));
                    }
                }
                if (MenuManager.LaneClearMenu["E"].GetValue <MenuBool>().Enabled&& SpellManager.E.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var mobs = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.E.Range) && x.IsMinion).OrderBy(x => x.IsRanged);

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var getCircularFarmLocation = SpellManager.E.GetCircularFarmLocation(mobs.ToList());

                    if (getCircularFarmLocation.MinionsHit >= MenuManager.LaneClearMenu["EMinHits"].GetValue <MenuSlider>().Value)
                    {
                        SpellManager.E.Cast(getCircularFarmLocation.Position);
                    }
                }
                if (MenuManager.LaneClearMenu["W"].GetValue <MenuBool>().Enabled&& SpellManager.W.IsReady() && !objPlayer.HasBuff("HeimerdingerR"))
                {
                    var mobs = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(SpellManager.W.Range) && x.IsMinion).OrderBy(x => x.Health);

                    if (mobs.Count() == 0)
                    {
                        return;
                    }

                    var killable = mobs.ThenBy(x => x.Health <= SpellManager.W.GetDamage(x)).ThenBy(x => x.DistanceToPlayer());

                    if (killable.Count() == 0)
                    {
                        killable = mobs;
                    }

                    var getLineFarmLocation = SpellManager.W.GetLineFarmLocation(killable.ToList());

                    if (getLineFarmLocation.MinionsHit >= 1)
                    {
                        SpellManager.W.Cast(getLineFarmLocation.Position);
                    }
                }
            }