public static void CastBasicFarm(Spell spell) { if (!spell.IsReady()) return; var minion = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, spell.Range, MinionTypes.All, MinionTeam.NotAlly); if (minion.Count == 0) return; if (spell.Type == SkillshotType.SkillshotCircle) { spell.UpdateSourcePosition(); var predPosition = spell.GetCircularFarmLocation(minion); if (predPosition.MinionsHit >= 2) { spell.Cast(predPosition.Position); } } else if (spell.Type == SkillshotType.SkillshotLine || spell.Type == SkillshotType.SkillshotCone) { spell.UpdateSourcePosition(); var predPosition = spell.GetLineFarmLocation(minion); if (predPosition.MinionsHit >= 2) spell.Cast(predPosition.Position); } }
private void Clear() { float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f; if (player.Mana < player.MaxMana * perc) { return; } if (config.Item("useqLC", true).GetValue <bool>() && Q.IsReady()) { MinionManager.FarmLocation bestPositionQ = Q.GetCircularFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionQ.MinionsHit >= config.Item("qMinHit", true).GetValue <Slider>().Value) { Q.Cast(bestPositionQ.Position); } } if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady()) { MinionManager.FarmLocation bestPositionE = E.GetLineFarmLocation( MinionManager.GetMinions( ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionE.MinionsHit >= config.Item("eMinHit", true).GetValue <Slider>().Value) { E.Cast(bestPositionE.Position); } } }
private static void Clear() { var perc = getSliderItem(laneClearMenu, "minmana") / 100f; if (player.Mana < player.MaxMana * perc) { return; } if (getCheckBoxItem(laneClearMenu, "useqLC") && Q.IsReady()) { var bestPositionQ = Q.GetCircularFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionQ.MinionsHit >= getSliderItem(laneClearMenu, "qMinHit")) { Q.Cast(bestPositionQ.Position, getCheckBoxItem(config, "packets")); } } if (getCheckBoxItem(laneClearMenu, "useeLC") && E.IsReady()) { var bestPositionE = E.GetLineFarmLocation( MinionManager.GetMinions( ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionE.MinionsHit >= getSliderItem(laneClearMenu, "eMinHit")) { E.Cast(bestPositionE.Position, getCheckBoxItem(config, "packets")); } } }
private static void LogicE() { var t = TargetSelector.GetTarget(E.Range, DamageType.Magical); if (t.IsValidTarget()) { if (Program.Combo && Player.Mana > RMANA + EMANA) { Program.CastSpell(E, t); } else if (Program.Farm && OktwCommon.CanHarras() && getCheckBoxItem(eMenu, "harrasE") && getCheckBoxItem(harassMenu, "harras" + t.NetworkId) && Player.Mana > RMANA + EMANA + WMANA + EMANA) { Program.CastSpell(E, t); } else { var eDmg = OktwCommon.GetKsDamage(t, E); var qDmg = Q.GetDamage(t); if (qDmg + eDmg > t.Health) { if (eDmg > t.Health) { Program.CastSpell(E, t); } else if (Player.Mana > QMANA + EMANA) { Program.CastSpell(E, t); } return; } } if (!Program.None && Player.Mana > RMANA + EMANA) { foreach ( var enemy in Program.Enemies.Where(enemy => enemy.IsValidTarget(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy); } } } else if (Program.LaneClear && Player.ManaPercent > getSliderItem(farmMenu, "Mana") && getCheckBoxItem(farmMenu, "farmE") && Player.Mana > RMANA + EMANA) { var minionList = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPosition = E.GetCircularFarmLocation(minionList, E.Width); if (farmPosition.MinionsHit >= getSliderItem(farmMenu, "LCminions")) { E.Cast(farmPosition.Position); } } }
private void LaneClear(bool ignoreConfig = false) { var farmQ = ignoreConfig || getBoxItem(farmMenu, "farmQ") == 1 || getBoxItem(farmMenu, "farmQ") == 2; var farmE = ignoreConfig || getCheckBoxItem(farmMenu, "farmE"); List <Obj_AI_Base> minions; bool jungleMobs; if (farmQ && _spellQ.IsReady()) { minions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _spellQ.Range, MinionTypes.All, MinionTeam.NotAlly); minions.RemoveAll(x => x.MaxHealth <= 5); //filter wards the ghetto method lel jungleMobs = minions.Any(x => x.Team == GameObjectTeam.Neutral); _spellQ.Width = SpellQWidth; var farmInfo = _spellQ.GetCircularFarmLocation(minions, _spellQ.Width); if (farmInfo.MinionsHit >= 1) { CastQ(farmInfo.Position, jungleMobs ? 0 : getSliderItem(farmMenu, "farmQPercent")); } } if (!farmE || !_spellE.IsReady() || IsInPassiveForm()) { return; } _comboE = false; minions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _spellE.Range, MinionTypes.All, MinionTeam.NotAlly); minions.RemoveAll(x => x.MaxHealth <= 5); //filter wards the ghetto method lel jungleMobs = minions.Any(x => x.Team == GameObjectTeam.Neutral); var enoughMana = GetManaPercent() > getSliderItem(farmMenu, "farmEPercent"); if (enoughMana && ((minions.Count >= 3 || jungleMobs) && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.E).ToggleState == 1)) { _spellE.CastOnUnit(ObjectManager.Player); } else if (!enoughMana || ((minions.Count <= 2 && !jungleMobs) && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.E).ToggleState == 2)) { RegulateEState(!enoughMana); } }
public static Vector2 GetCircularFarmMinions(this LeagueSharp.Common.Spell spell, int minionCount = 1) { List <Obj_AI_Base> minions = MinionManager.GetMinions(ObjectManager.Player.Position, spell.Range); MinionManager.FarmLocation location = spell.GetCircularFarmLocation(minions, spell.Width * 0.75f); if (location.MinionsHit >= minionCount && spell.IsInRange(location.Position.To3D())) { return(location.Position); } return(new Vector2(0, 0)); }
private void Clear() { if (Q.IsReady() && savedQ != null && ((Environment.Minion.countMinionsInrange(savedQ.position, QExplosionRange) > config.Item("qMinHit", true).GetValue <Slider>().Value&& savedQ.deltaT() > 2000) || MinionManager.GetMinions( ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly) .Count(m => HealthPrediction.GetHealthPrediction(m, 600) < 0 || m.Health < 35) > 0)) { Q.Cast(); } float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f; if (player.Mana < player.MaxMana * perc) { return; } if (Q.IsReady() && savedQ == null && SimpleQ && config.Item("useqLC", true).GetValue <bool>()) { MinionManager.FarmLocation bestPositionQ = Q.GetCircularFarmLocation( MinionManager.GetMinions( ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly), QExplosionRange); if (bestPositionQ.MinionsHit > config.Item("qMinHit", true).GetValue <Slider>().Value) { Q.Cast(bestPositionQ.Position); return; } } if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady()) { MinionManager.FarmLocation bestPositionE = E.GetLineFarmLocation( MinionManager.GetMinions( ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionE.MinionsHit >= config.Item("eMinHit", true).GetValue <Slider>().Value) { E.Cast(bestPositionE.Position); } } if (W.IsReady() && config.Item("usewLC", true).GetValue <bool>() && MinionManager.GetMinions( ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly) .Count(m => m.Health > 600) > 0) { W.Cast(); } }
private static void Clear() { var minions = ObjectManager.Get <Obj_AI_Minion>().Where(m => m.LSIsValidTarget(400)).ToList(); if (minions.Count > 2) { if (Items.HasItem(3077) && Items.CanUseItem(3077)) { Items.UseItem(3077); } if (Items.HasItem(3074) && Items.CanUseItem(3074)) { Items.UseItem(3074); } } var perc = getSliderItem(laneClearMenu, "minmana") / 100f; if (player.Mana < player.MaxMana * perc) { return; } if (getCheckBoxItem(laneClearMenu, "usewLC") && W.IsReady() && player.Spellbook.GetSpell(SpellSlot.W).SData.Mana <= player.Mana) { var minionsForW = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, W.Range, MinionTypes.All, MinionTeam.NotAlly); var bestPositionW = W.GetLineFarmLocation(minionsForW); if (bestPositionW.Position.IsValid()) { if (bestPositionW.MinionsHit >= getSliderItem(laneClearMenu, "whitLC")) { W.Cast(bestPositionW.Position, getCheckBoxItem(config, "packets")); } } } if (getCheckBoxItem(laneClearMenu, "useqLC") && Q.IsReady() && player.Spellbook.GetSpell(SpellSlot.Q).SData.Mana <= player.Mana) { var minionsForQ = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly); var bestPositionQ = Q.GetCircularFarmLocation(minionsForQ); if (Q.IsReady() && bestPositionQ.MinionsHit > getSliderItem(laneClearMenu, "qhitLC")) { Q.Cast(bestPositionQ.Position, getCheckBoxItem(config, "packets")); } } }
private void LogicE() { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Magical); if (t.IsValidTargetLS()) { if (Program.Combo && Player.Mana > RMANA + EMANA) { Program.CastSpell(E, t); } else if (Program.Farm && OktwCommon.CanHarras() && Config.Item("harrasE", true).GetValue <bool>() && Config.Item("harras" + t.ChampionName).GetValue <bool>() && Player.Mana > RMANA + EMANA + WMANA + EMANA) { Program.CastSpell(E, t); } else { var eDmg = OktwCommon.GetKsDamage(t, E); var qDmg = Q.GetDamage(t); if (qDmg + eDmg > t.Health) { if (eDmg > t.Health) { Program.CastSpell(E, t); } else if (Player.Mana > QMANA + EMANA) { Program.CastSpell(E, t); } return; } } if (!Program.None && Player.Mana > RMANA + EMANA) { foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy); } } } else if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmE", true).GetValue <bool>() && Player.Mana > RMANA + EMANA) { var minionList = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPosition = E.GetCircularFarmLocation(minionList, E.Width); if (farmPosition.MinionsHit >= Config.Item("LCminions", true).GetValue <Slider>().Value) { E.Cast(farmPosition.Position); } } }
public static IEnumerable <Obj_AI_Base> GetMins(this LeagueSharp.Common.Spell spell, FarmMode farmMode, GameObjectTeam minionTeam, MinionType minionType = MinionType.All, MinionGroup minionGroup = MinionGroup.Alone, int minionCount = 1) { IEnumerable <Obj_AI_Base> list = ObjectManager.Get <Obj_AI_Minion>().Where(m => m.LSIsValidTarget(spell.Range)); IEnumerable <Obj_AI_Base> mobs; if (farmMode == FarmMode.JungleClear) { mobs = list.Where(w => w.Team == minionTeam); if (minionType == MinionType.BigMobs) { IEnumerable <Obj_AI_Base> oMob = (from fMobs in mobs from fBigBoys in new[] { "SRU_Blue", "SRU_Gromp", "SRU_Murkwolf", "SRU_Razorbeak", "SRU_Red", "SRU_Krug", "SRU_Dragon", "SRU_Baron", "Sru_Crab" } where fBigBoys == fMobs.BaseSkinName select fMobs).AsEnumerable(); mobs = oMob; } } else { mobs = list; } var objAiBases = mobs as IList <Obj_AI_Base> ?? mobs.ToList(); List <Obj_AI_Base> m1 = objAiBases.ToList(); var locLine = spell.GetLineFarmLocation(m1); if (locLine.MinionsHit >= 3 && spell.IsInRange(locLine.Position.To3D())) { spell.Cast(locLine.Position); } var locCircular = spell.GetCircularFarmLocation(m1, spell.Width); if (locCircular.MinionsHit >= minionCount && spell.IsInRange(locCircular.Position.To3D())) { spell.Cast(locCircular.Position); } return(null); }
public static Vector2 GetCircularFarmLocation(Spell spell, MobTypes mobTypes = MobTypes.All, int minMobCount = 1) { var cVector = new Vector2(); var rangedMinionsE = LeagueSharp.Common.MinionManager.GetMinions(ObjectManager.Player.ServerPosition, spell.Range); var minionsE = spell.GetCircularFarmLocation(rangedMinionsE, spell.Range); if (minionsE.MinionsHit > minMobCount && spell.IsInRange(minionsE.Position)) { cVector = minionsE.Position; } return(cVector); }
private static void LogicQ() { var t = TargetSelector.GetTarget(Q.Range, DamageType.Magical); if (t.IsValidTarget()) { var qDmg = OktwCommon.GetKsDamage(t, Q) + BonusDmg(t); if (qDmg > t.Health) { Program.CastSpell(Q, t); } if (R.IsReady() && t.IsValidTarget(R.Range)) { return; } if (Program.Combo && Player.Mana > RMANA + QMANA) { Program.CastSpell(Q, t); } else if (Program.Farm && getCheckBoxItem(qMenu, "harrasQ") && Player.Mana > RMANA + EMANA + WMANA + EMANA) { Program.CastSpell(Q, t); } if (Player.Mana > RMANA + QMANA) { foreach ( var enemy in Program.Enemies.Where(enemy => enemy.IsValidTarget(Q.Range) && !OktwCommon.CanMove(enemy))) { Q.Cast(enemy); } } } else if (Program.LaneClear && Player.ManaPercent > getSliderItem(farmMenu, "Mana") && getCheckBoxItem(farmMenu, "farmQ")) { var allMinions = Cache.GetMinions(Player.ServerPosition, Q.Range); var farmPos = Q.GetCircularFarmLocation(allMinions, 150); if (farmPos.MinionsHit > getSliderItem(farmMenu, "LCminions")) { Q.Cast(farmPos.Position); } } }
private void Game_OnDraw(EventArgs args) { DrawHelper.DrawCircle(config.Item("drawqq", true).GetValue <Circle>(), Q.Range); DrawHelper.DrawCircle(config.Item("drawee", true).GetValue <Circle>(), E.Range); DrawHelper.DrawCircle( config.Item("drawrr", true).GetValue <Circle>(), R.Level >= 1 ? rRanges[R.Level - 1] : rRanges[0]); HpBarDamageIndicator.Enabled = config.Item("drawcombo").GetValue <bool>(); if (!config.Item("bestpospas", true).GetValue <bool>()) { return; } MinionManager.FarmLocation bestPositionP = P.GetCircularFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionP.Position.IsValid() && bestPositionP.MinionsHit > 2 && uBlades) { Drawing.DrawCircle(bestPositionP.Position.To3D(), 150f, Color.Crimson); } }
private void LogicQ() { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Magical); if (t.IsValidTarget()) { var qDmg = OktwCommon.GetKsDamage(t, Q) + BonusDmg(t); if (qDmg > t.Health) { Program.CastSpell(Q, t); } if (R.IsReady() && t.IsValidTarget(R.Range)) { return; } if (Program.Combo && Player.Mana > RMANA + QMANA) { Program.CastSpell(Q, t); } else if (Program.Farm && Config.Item("harrasQ", true).GetValue <bool>() && Player.Mana > RMANA + EMANA + WMANA + EMANA) { Program.CastSpell(Q, t); } if (Player.Mana > RMANA + QMANA) { foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(Q.Range) && !OktwCommon.CanMove(enemy))) { Q.Cast(enemy); } } } else if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmQ", true).GetValue <bool>()) { var allMinions = Cache.GetMinions(Player.ServerPosition, Q.Range); var farmPos = Q.GetCircularFarmLocation(allMinions, 150); if (farmPos.MinionsHit > Config.Item("LCminions", true).GetValue <Slider>().Value) { Q.Cast(farmPos.Position); } } }
//Lane private static void Lane() { if (Player.ManaPercent < lc["laneclearEMinimumMana"].Cast <Slider>().CurrentValue || Player.ManaPercent < lc["laneclearQMinimumMana"].Cast <Slider>().CurrentValue || Player.ManaPercent < lc["laneclearWMinimumMana"].Cast <Slider>().CurrentValue) { return; } var allMinions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, E.Range); var allMinionsW = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, 450f); if (allMinions.Count > lc["LaneClearEMinMinions"].Cast <Slider>().CurrentValue) { if (lc["laneclearE"].Cast <CheckBox>().CurrentValue&& E.IsReady()) { foreach (var minion in allMinions) { if (minion.LSIsValidTarget() && !minion.HasBuff("malzahare") && minion.Health < E.GetDamage(minion)) { E.CastOnUnit(minion); } } } } if (lc["laneclearW"].Cast <CheckBox>().CurrentValue&& W.IsReady()) { foreach (var minion in allMinionsW) { if (minion.IsValidTarget()) { W.Cast(minion); } } } if (lc["laneclearQ"].Cast <CheckBox>().CurrentValue&& Q.IsReady()) { var allMinionsQ = MinionManager.GetMinions(Player.ServerPosition, Q.Range); var farmPos = Q.GetCircularFarmLocation(allMinionsQ, 150); if (farmPos.MinionsHit > lc["LaneClearMinions"].Cast <Slider>().CurrentValue) { Q.Cast(farmPos.Position); } } }
private static void LaneClear() { var minions = MinionManager.GetMinions(Player.Position, _q.Range, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.MaxHealth); var mana = GetValue("minmana"); var useqlasthit = GetBool("qlasthitlane", typeof(bool)); var usewlasthit = GetBool("wlasthitlane", typeof(bool)); var qlaneclear = GetBool("qlaneclear", typeof(bool)); var wlaneclear = GetBool("wlaneclear", typeof(bool)); var minminionsw = GetValue("wlaneclearmin"); if (Player.ManaPercent < mana) { return; } foreach (var minion in minions) { if (minion.Health <= _q.GetDamage(minion) && useqlasthit && _q.IsReady()) { _q.Cast(minion); } if (minion.Health <= _w.GetDamage(minion) && usewlasthit && _w.IsReady() && minion.Distance(Player) <= _w.Range) { _w.Cast(minion); } if (qlaneclear && _q.IsReady()) { _q.Cast(minion); } } var circularposition = _w.GetCircularFarmLocation(minions); if (qlaneclear && circularposition.MinionsHit >= minminionsw && _w.IsReady()) { _w.Cast(circularposition.Position); } }
private static void LaneClear() { var minions = MinionManager.GetMinions(Player.Position, _q.Range, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.MaxHealth); var mana = getSliderItem(MenuConfig.clearMenu, "minmana"); var useqlasthit = getCheckBoxItem(MenuConfig.clearMenu, "qlasthitlane"); var usewlasthit = getCheckBoxItem(MenuConfig.clearMenu, "wlasthitlane"); var qlaneclear = getCheckBoxItem(MenuConfig.clearMenu, "qlaneclear"); var wlaneclear = getCheckBoxItem(MenuConfig.clearMenu, "wlaneclear"); var minminionsw = getSliderItem(MenuConfig.clearMenu, "wlaneclearmin"); if (Player.ManaPercent < mana) { return; } foreach (var minion in minions) { if (minion.Health <= _q.GetDamage(minion) && useqlasthit && _q.IsReady()) { _q.Cast(minion); } if (minion.Health <= _w.GetDamage(minion) && usewlasthit && _w.IsReady() && minion.LSDistance(Player) <= _w.Range) { _w.Cast(minion); } if (qlaneclear && _q.IsReady()) { _q.Cast(minion); } } var circularposition = _w.GetCircularFarmLocation(minions); if (qlaneclear && circularposition.MinionsHit >= minminionsw && _w.IsReady()) { _w.Cast(circularposition.Position); } }
private static void OnGameUpdate(EventArgs args) { if (Player.IsDead || Player.LSIsRecalling()) { return; } var lanemana = getSliderItem(laneClearMenu, "LaneMana"); var MinionsW = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, W.Range + W.Width); var MinionsE = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, E.Range + E.Width); var Wfarmpos = W.GetLineFarmLocation(MinionsW, W.Width); var Efarmpos = E.GetCircularFarmLocation(MinionsE, E.Width); if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) && Wfarmpos.MinionsHit >= 3 && getCheckBoxItem(laneClearMenu, "LaneclearW") && Player.ManaPercent >= lanemana) { W.Cast(Wfarmpos.Position); } if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) && Efarmpos.MinionsHit >= 3 && MinionsE.Count >= 1 && getCheckBoxItem(laneClearMenu, "LaneclearE") && Player.ManaPercent >= lanemana) { E.Cast(Efarmpos.Position); } if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)) { Combo(); } if (getCheckBoxItem(comboMenu, "KS")) { KS(); } if (getCheckBoxItem(comboMenu, "ZhoUlt")) { ZhoUlt(); } if (getKeyBindItem(miscMenu, "AutoHarras")) { AutoHarras(); } }
private void Game_OnDraw(EventArgs args) { DrawHelper.DrawCircle(getCheckBoxItem(menuD, "drawqq"), Q.Range, Color.FromArgb(180, 100, 146, 166)); DrawHelper.DrawCircle(getCheckBoxItem(menuD, "drawee"), E.Range, Color.FromArgb(180, 100, 146, 166)); DrawHelper.DrawCircle(getCheckBoxItem(menuD, "drawrr"), R.Level >= 1 ? rRanges[R.Level - 1] : rRanges[0], Color.FromArgb(180, 100, 146, 166)); if (!getCheckBoxItem(menuD, "bestpospas")) { return; } var bestPositionP = P.GetCircularFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly)); if (bestPositionP.Position.IsValid() && bestPositionP.MinionsHit > 2 && uBlades) { Drawing.DrawCircle(bestPositionP.Position.To3D(), 150f, Color.Crimson); } }
private void LogicQ() { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t.IsValidTargetLS()) { if (EloBuddy.Player.Instance.IsInAutoAttackRange(t) && t.HasBuff("quinnw")) { return; } if (Program.Combo && Player.Mana > RMANA + QMANA) { Program.CastSpell(Q, t); } else if (Program.Farm && Player.Mana > RMANA + EMANA + QMANA + WMANA && Config.Item("harrasQ", true).GetValue <bool>() && Config.Item("harras" + t.ChampionName).GetValue <bool>() && OktwCommon.CanHarras()) { Program.CastSpell(Q, t); } else if (OktwCommon.GetKsDamage(t, Q) > t.Health) { Program.CastSpell(Q, t); } if (!Program.None && Player.Mana > RMANA + QMANA + EMANA) { foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(Q.Range) && !OktwCommon.CanMove(enemy))) { Q.Cast(enemy); } } } else if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmQ", true).GetValue <bool>() && Player.Mana > RMANA + QMANA) { var minionList = Cache.GetMinions(Player.ServerPosition, Q.Range - 150); var farmPosition = Q.GetCircularFarmLocation(minionList, 150); if (farmPosition.MinionsHit >= Config.Item("LCminions", true).GetValue <Slider>().Value) { Q.Cast(farmPosition.Position); } } }
private static void LogicQ() { var t = TargetSelector.GetTarget(Q.Range, DamageType.Physical); if (t.LSIsValidTarget()) { if (SebbyLib.Orbwalking.InAutoAttackRange(t) && t.HasBuff("quinnw")) { return; } if (Program.Combo && Player.Mana > RMANA + QMANA) { Program.CastSpell(Q, t); } else if (Program.Farm && Player.Mana > RMANA + EMANA + QMANA + WMANA && getCheckBoxItem(qMenu, "harrasQ") && getCheckBoxItem(harassMenu, "harras" + t.ChampionName) && OktwCommon.CanHarras()) { Program.CastSpell(Q, t); } else if (OktwCommon.GetKsDamage(t, Q) > t.Health) { Program.CastSpell(Q, t); } if (!Program.None && Player.Mana > RMANA + QMANA + EMANA) { foreach (var enemy in Program.Enemies.Where(enemy => enemy.LSIsValidTarget(Q.Range) && !OktwCommon.CanMove(enemy))) { Q.Cast(enemy); } } } else if (Program.LaneClear && Player.ManaPercent > getSliderItem(farmMenu, "Mana") && getCheckBoxItem(farmMenu, "farmQ") && Player.Mana > RMANA + QMANA) { var minionList = Cache.GetMinions(Player.ServerPosition, Q.Range - 150); var farmPosition = Q.GetCircularFarmLocation(minionList, 150); if (farmPosition.MinionsHit >= getSliderItem(farmMenu, "LCminions")) { Q.Cast(farmPosition.Position); } } }
private static void LogicE() { var t = TargetSelector.GetTarget(E.Range, DamageType.Magical); if (t.LSIsValidTarget()) { var eDmg = OktwCommon.GetKsDamage(t, E); if (eDmg > t.Health) { Program.CastSpell(E, t); } else if (eDmg + Q.GetDamage(t) > t.Health && Player.Mana > QMANA + EMANA + RMANA) { Program.CastSpell(E, t); } else if (Program.Combo && Player.Mana > RMANA + WMANA + QMANA + EMANA) { if (!SebbyLib.Orbwalking.InAutoAttackRange(t) || Player.CountEnemiesInRange(300) > 0 || t.CountEnemiesInRange(250) > 1) { Program.CastSpell(E, t); } else { foreach (var enemy in Program.Enemies.Where(enemy => enemy.LSIsValidTarget(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy, true, true); } } } } if (Program.LaneClear && Player.ManaPercent > getSliderItem(farmMenu, "Mana") && getCheckBoxItem(farmMenu, "farmE")) { var minions = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPos = E.GetCircularFarmLocation(minions, E.Width); if (farmPos.MinionsHit >= getSliderItem(farmMenu, "LCminions")) { E.Cast(farmPos.Position); } } }
private void LogicE() { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Magical); if (t.IsValidTargetLS()) { var eDmg = OktwCommon.GetKsDamage(t, E); if (eDmg > t.Health) { Program.CastSpell(E, t); } else if (eDmg + Q.GetDamage(t) > t.Health && Player.Mana > QMANA + EMANA + RMANA) { Program.CastSpell(E, t); } else if (Program.Combo && Player.Mana > RMANA + WMANA + QMANA + EMANA) { if (!EloBuddy.Player.Instance.IsInAutoAttackRange(t) || Player.CountEnemiesInRange(300) > 0 || t.CountEnemiesInRange(250) > 1) { Program.CastSpell(E, t); } else { foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy, true, true); } } } } if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmE", true).GetValue <bool>()) { var minions = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPos = E.GetCircularFarmLocation(minions, E.Width); if (farmPos.MinionsHit >= Config.Item("LCminions", true).GetValue <Slider>().Value) { E.Cast(farmPos.Position); } } }
private void Farm() { if (Program.LaneClear && E.IsReady() && Config.Item("farmE", true).GetValue <bool>()) { var mobs = Cache.GetMinions(Player.ServerPosition, E.Range, MinionTeam.Neutral); if (mobs.Count > 0 && Player.Mana > RMANA + EMANA + QMANA && OktwCommon.GetBuffCount(mobs[0], "varuswdebuff") == 3) { E.Cast(mobs[0]); return; } if (Player.ManaPercentage() > Config.Item("Mana", true).GetValue <Slider>().Value) { var allMinionsE = Cache.GetMinions(Player.ServerPosition, E.Range); var Efarm = Q.GetCircularFarmLocation(allMinionsE, E.Width); if (Efarm.MinionsHit > 3) { E.Cast(Efarm.Position); return; } } } }
private void Farm() { if (Program.LaneClear && E.IsReady() && getCheckBoxItem(farmMenu, "farmE")) { var mobs = Cache.GetMinions(Player.ServerPosition, E.Range, MinionTeam.Neutral); if (mobs.Count > 0 && Player.Mana > RMANA + EMANA + QMANA && OktwCommon.GetBuffCount(mobs[0], "varuswdebuff") == 3) { E.Cast(mobs[0]); return; } if (Player.ManaPercent > getSliderItem(farmMenu, "Mana")) { var allMinionsE = Cache.GetMinions(Player.ServerPosition, E.Range); var Efarm = Q.GetCircularFarmLocation(allMinionsE, E.Width); if (Efarm.MinionsHit > 3) { E.Cast(Efarm.Position); return; } } } }
protected void CastBasicFarm(Spell spell) { if(!spell.IsReady()) return; var minion = MinionManager.GetMinions(Player.ServerPosition, spell.Range, MinionTypes.All, MinionTeam.NotAlly); if (minion.Count == 0) return; if (spell.Type == SkillshotType.SkillshotCircle) { spell.UpdateSourcePosition(); var predPosition = spell.GetCircularFarmLocation(minion); if (predPosition.MinionsHit >= 2) { spell.Cast(predPosition.Position, Player.ChampionName == "Kartus" || packets()); } } else if (spell.Type == SkillshotType.SkillshotLine) { spell.UpdateSourcePosition(); var predPosition = spell.GetLineFarmLocation(minion); if(predPosition.MinionsHit >= 2) spell.Cast(predPosition.Position, packets()); } }
public static void Farm(Spell spell, int minHit = 2, float overrideWidth = -1f) { if (!spell.IsReady()) { return; } var minions = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, spell.Range, MinionTypes.All, MinionTeam.NotAlly, MinionOrderTypes.MaxHealth).ToList(); if (minions.Count == 0) { return; } if (spell.Type == SkillshotType.SkillshotCircle) { spell.UpdateSourcePosition(); var prediction = spell.GetCircularFarmLocation(minions, overrideWidth); if (prediction.MinionsHit >= minHit) { spell.Cast(prediction.Position); } } else if (spell.Type == SkillshotType.SkillshotLine) { spell.UpdateSourcePosition(); var prediction = spell.GetLineFarmLocation(minions, overrideWidth); if (prediction.MinionsHit >= minHit) { spell.Cast(prediction.Position); } } }
private static void Laneclear() { var allMinionsQ = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _q.Range, MinionTypes.All); var allMinionsW = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, _w.Range + _w.Width / 2, MinionTypes.All); var rangedMinionsW = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, _w.Range + _w.Width + 50, MinionTypes.Ranged); var minionhitq = getSliderItem(clearMenu, "minminions"); var minionhitw = getSliderItem(clearMenu, "minminionsw"); var useQl = getCheckBoxItem(clearMenu, "UseQL"); var useWl = getCheckBoxItem(clearMenu, "UseWL"); if (_q.IsReady() && useQl) { var fl2 = _q.GetCircularFarmLocation(allMinionsQ, 200); if (fl2.MinionsHit >= minionhitq) { _q.Cast(fl2.Position); } else { foreach (var minion in allMinionsQ) { if (Orbwalking.InAutoAttackRange(minion) && minion.Health < 0.75 * _player.GetSpellDamage(minion, SpellSlot.Q)) { _q.Cast(minion); } else if (!Orbwalking.InAutoAttackRange(minion) && minion.Health < 0.75 * _player.GetSpellDamage(minion, SpellSlot.Q)) { _q.Cast(minion); } } } } if (_w.IsReady() && useWl) { var fl1 = _w.GetCircularFarmLocation(rangedMinionsW, _w.Width); if (fl1.MinionsHit >= minionhitw) { _w.Cast(fl1.Position); } else { foreach (var minion in allMinionsW) { if (!Orbwalking.InAutoAttackRange(minion) && minion.Health < 0.75 * _player.GetSpellDamage(minion, SpellSlot.W)) { _w.Cast(minion); } } } } }
private void LogicE() { if (Player.HasBuff("LuxLightStrikeKugel") && !Program.None) { int eBig = Epos.CountEnemiesInRange(350); if (Config.Item("autoEslow", true).GetValue <bool>()) { int detonate = eBig - Epos.CountEnemiesInRange(160); if (detonate > 0 || eBig > 1) { E.Cast(); } } else if (Config.Item("autoEdet", true).GetValue <bool>()) { if (eBig > 0) { E.Cast(); } } else { E.Cast(); } } else { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Magical); if (t.IsValidTargetLS()) { if (!Config.Item("autoEcc", true).GetValue <bool>()) { if (Program.Combo && Player.Mana > RMANA + EMANA) { Program.CastSpell(E, t); } else if (Program.Farm && OktwCommon.CanHarras() && Config.Item("harrasE", true).GetValue <bool>() && Player.Mana > RMANA + EMANA + EMANA + RMANA) { Program.CastSpell(E, t); } else if (OktwCommon.GetKsDamage(t, E) > t.Health) { Program.CastSpell(E, t); } } foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy, true); } } else if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmE", true).GetValue <bool>() && Player.Mana > RMANA + WMANA) { var minionList = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPosition = E.GetCircularFarmLocation(minionList, E.Width); if (farmPosition.MinionsHit > Config.Item("LCminions", true).GetValue <Slider>().Value) { E.Cast(farmPosition.Position); } } } }
private static void ConeFarm(Spell spell, List<Obj_AI_Base> minions, int min, float overrideWidth = -1f) { var spellWidth = overrideWidth > 0 ? overrideWidth : spell.Width; var pred = spell.GetCircularFarmLocation(minions, spellWidth); if (pred.MinionsHit >= min) { spell.Cast(pred.Position); } }
private static void LogicE() { if (Player.HasBuff("LuxLightStrikeKugel") && !Program.None) { int eBig = Epos.CountEnemiesInRange(350); if (getCheckBoxItem(eMenu, "autoEslow")) { int detonate = eBig - Epos.CountEnemiesInRange(160); if (detonate > 0 || eBig > 1) { E.Cast(); } } else if (getCheckBoxItem(eMenu, "autoEdet")) { if (eBig > 0) { E.Cast(); } } else { E.Cast(); } } else { var t = TargetSelector.GetTarget(E.Range, DamageType.Magical); if (t.LSIsValidTarget()) { if (!getCheckBoxItem(eMenu, "autoEcc")) { if (Program.Combo && Player.Mana > RMANA + EMANA) { Program.CastSpell(E, t); } else if (Program.Farm && OktwCommon.CanHarras() && getCheckBoxItem(eMenu, "harrasE") && Player.Mana > RMANA + EMANA + EMANA + RMANA) { Program.CastSpell(E, t); } else if (OktwCommon.GetKsDamage(t, E) > t.Health) { Program.CastSpell(E, t); } } foreach (var enemy in Program.Enemies.Where(enemy => enemy.LSIsValidTarget(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy, true); } } else if (Program.LaneClear && Player.ManaPercent > getSliderItem(farmMenu, "Mana") && getCheckBoxItem(farmMenu, "farmE") && Player.Mana > RMANA + WMANA) { var minionList = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPosition = E.GetCircularFarmLocation(minionList, E.Width); if (farmPosition.MinionsHit > getSliderItem(farmMenu, "LCminions")) { E.Cast(farmPosition.Position); } } } }
private static void Farm() { if (getSliderItem(farmMenu, "ManaSliderFarm") > ObjectManager.Player.Mana / ObjectManager.Player.MaxMana * 100) { return; } var rangedMinions = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, Q2.Range, MinionTypes.Ranged); var allMinions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q2.Range); var useQi = getCheckBoxItem(farmMenu, "UseQFarm"); var useEi = getCheckBoxItem(farmMenu, "UseEFarm"); var useQ = useQi; var useE = useEi; if (Q1.IsReady() && useQ) { var rangedLocation = Q2.GetCircularFarmLocation(rangedMinions); var location = Q2.GetCircularFarmLocation(allMinions); var bLocation = location.MinionsHit > rangedLocation.MinionsHit + 1 ? location : rangedLocation; if (bLocation.MinionsHit > 0) { Q2.Cast(bLocation.Position.To3D()); } } if (E.IsReady() && useE) { var rangedLocation = E.GetCircularFarmLocation(rangedMinions, E.Width * 2); var location = E.GetCircularFarmLocation(allMinions, E.Width * 2); var bLocation = location.MinionsHit > rangedLocation.MinionsHit + 1 ? location : rangedLocation; if (bLocation.MinionsHit > 2) { E.Cast(bLocation.Position.To3D()); } } /* * { * if (useQ && Q1.IsReady()) * { * foreach (var minion in allMinions) * { * if (!Orbwalking.InAutoAttackRange(minion)) * { * var Qdamage = ObjectManager.Player.GetSpellDamage(minion, SpellSlot.Q) * 0.75; * * if (Qdamage > Q1.GetHealthPrediction(minion)) * { * Q2.Cast(minion); * } * } * } * } * * if (E.IsReady() && useE) * { * var rangedLocation = E.GetCircularFarmLocation(rangedMinions, E.Width * 2); * var location = E.GetCircularFarmLocation(allMinions, E.Width * 2); * * var bLocation = (location.MinionsHit > rangedLocation.MinionsHit + 1) ? location : rangedLocation; * * if (bLocation.MinionsHit > 2) * { * E.Cast(bLocation.Position.To3D()); * } * } * } */ }
private static void Laneclear() { var Qdelay = Environment.TickCount - Qcast; var Rdelay = Environment.TickCount - Rcast; var rangedMinionsQ = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, _q.Range + _q.Width + 30, MinionTypes.Ranged); var allMinionsQ = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, _q.Range + _q.Width + 30, MinionTypes.All); var allMinionsE = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _e.Range, MinionTypes.All); var allMinionsR = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _r.Range, MinionTypes.All); var rangedMinionsR = MinionManager.GetMinions( ObjectManager.Player.ServerPosition, _r.Range + _r.Width, MinionTypes.Ranged); var useQl = getCheckBoxItem(clearMenu, "UseQL"); var useEl = getCheckBoxItem(clearMenu, "UseEL"); var useRl = getCheckBoxItem(clearMenu, "UseRL"); var rlimL = getSliderItem(clearMenu, "RlimL"); if (_q.IsReady() && useQl && Rdelay >= getSliderItem(miscMenu, "delaycombo")) { var fl1 = _q.GetCircularFarmLocation(rangedMinionsQ, _q.Width); var fl2 = _q.GetCircularFarmLocation(allMinionsQ, _q.Width); if (fl1.MinionsHit >= 3) { _q.Cast(fl1.Position); Qcast = Environment.TickCount; } else if (fl2.MinionsHit >= 2 || allMinionsQ.Count == 1) { _q.Cast(fl2.Position); Qcast = Environment.TickCount; } else { foreach (var minion in allMinionsQ) { if (!Orbwalking.InAutoAttackRange(minion) && minion.Health < 0.75 * _player.GetSpellDamage(minion, SpellSlot.Q)) { _q.Cast(minion); } } } Qcast = Environment.TickCount; } if (_e.IsReady() && useEl) { var fl2 = _w.GetLineFarmLocation(allMinionsE, _e.Width); if (fl2.MinionsHit >= 2 || allMinionsE.Count == 1) { _e.Cast(fl2.Position); } else { foreach (var minion in allMinionsE) { if (!Orbwalking.InAutoAttackRange(minion) && minion.Health < 0.75 * _player.GetSpellDamage(minion, SpellSlot.E)) { _e.Cast(minion); } } } } if (_r.IsReady() && useRl && rlimL < UltiStucks() && allMinionsR.Count > 3 && Qdelay >= getSliderItem(miscMenu, "delaycombo")) { var fl1 = _w.GetLineFarmLocation(rangedMinionsR, _r.Width); var fl2 = _w.GetLineFarmLocation(allMinionsR, _r.Width); if (fl1.MinionsHit >= 3) { _r.Cast(fl1.Position); Rcast = Environment.TickCount; } else if (fl2.MinionsHit >= 2 || allMinionsR.Count == 1) { _r.Cast(fl2.Position); Rcast = Environment.TickCount; } else { foreach (var minion in allMinionsR) { if (!Orbwalking.InAutoAttackRange(minion) && minion.Health < 0.75 * _player.GetSpellDamage(minion, SpellSlot.R)) { _r.Cast(minion); } } } Rcast = Environment.TickCount; } }
public static Vector2 GetCircularFarmLocation(Spell spell, MobTypes mobTypes = MobTypes.All, int minMobCount = 1) { var cVector = new Vector2(); var rangedMinionsE = LeagueSharp.Common.MinionManager.GetMinions(ObjectManager.Player.ServerPosition, spell.Range); var minionsE = spell.GetCircularFarmLocation(rangedMinionsE, spell.Range); if (minionsE.MinionsHit > minMobCount && spell.IsInRange(minionsE.Position)) { cVector = minionsE.Position; } return cVector; }
private void LogicE() { if (Config.Item("autoE", true).GetValue <bool>()) { var trapPos = OktwCommon.GetTrapPos(E.Range); if (!trapPos.IsZero) { E.Cast(trapPos); } foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(E.Range) && !OktwCommon.CanMove(enemy))) { E.Cast(enemy); } } var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (t.IsValidTargetLS() && Config.Item("EmodeCombo", true).GetValue <StringList>().SelectedIndex != 2) { if (Program.Combo && !Player.Spellbook.IsAutoAttacking) { if (Config.Item("EmodeCombo", true).GetValue <StringList>().SelectedIndex == 1) { if (E.GetPrediction(t).CastPosition.Distance(t.Position) > 100) { if (Player.Position.Distance(t.ServerPosition) > Player.Position.Distance(t.Position)) { if (t.Position.Distance(Player.ServerPosition) < t.Position.Distance(Player.Position)) { Program.CastSpell(E, t); } } else { if (t.Position.Distance(Player.ServerPosition) > t.Position.Distance(Player.Position)) { Program.CastSpell(E, t); } } } } else { Program.CastSpell(E, t); } } E.CastIfWillHit(t, Config.Item("Eaoe", true).GetValue <Slider>().Value); } else if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmE", true).GetValue <bool>()) { var minionList = Cache.GetMinions(Player.ServerPosition, E.Range); var farmPosition = E.GetCircularFarmLocation(minionList, E.Width); if (farmPosition.MinionsHit >= Config.Item("LCminions", true).GetValue <Slider>().Value) { E.Cast(farmPosition.Position); } } }