public static void stackQ() { if (!Q.IsReady() || isQEmpovered() || !YasuoSharp.Config.Item("fleeStack").GetValue <bool>())//fleeStack { return; } var minions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q.Range + 50); if (!isDashigPro) { List <Vector2> minionPs = YasMath.GetCastMinionsPredictedPositions(minions, getNewQSpeed() * 0.3f, 30f, float.MaxValue, Player.ServerPosition, 465, false, SkillshotType.SkillshotLine); Vector2 clos = Geometry.Closest(Player.ServerPosition.To2D(), minionPs); if (Player.Distance(clos) < 475) { Q.Cast(clos, false); return; } } else { if (minions.Count(min => !min.IsDead && min.IsValid && min.Distance(getDashEndPos()) < QCir.Range) > 1) { QCir.Cast(Player.Position, false); return; } } }
public static void doLaneClear(Obj_AI_Hero target) { List <Obj_AI_Base> minions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, 1000, MinionTypes.All, MinionTeam.NotAlly); if (YasuoSharp.Config.Item("useElc").GetValue <bool>() && E.IsReady()) { foreach (var minion in minions.Where(minion => minion.IsValidTarget(E.Range) && enemyIsJumpable(minion))) { if (minion.Health < Player.GetSpellDamage(minion, E.Slot) || Q.IsReady() && minion.Health < (Player.GetSpellDamage(minion, E.Slot) + Player.GetSpellDamage(minion, Q.Slot))) { if (useENormal(minion)) { return; } } } } if (Q.IsReady() && YasuoSharp.Config.Item("useQlc").GetValue <bool>()) { if (isQEmpovered() && !(target != null && Player.Distance(target) < 1050)) { if (canCastFarQ()) { List <Vector2> minionPs = YasMath.GetCastMinionsPredictedPositions(minions, getNewQSpeed(), 50f, 1200f, Player.ServerPosition, 900f, false, SkillshotType.SkillshotLine); MinionManager.FarmLocation farm = QEmp.GetLineFarmLocation(minionPs); //MinionManager.GetBestLineFarmLocation(minionPs, 50f, 900f); if (farm.MinionsHit >= YasuoSharp.Config.Item("useEmpQHit").GetValue <Slider>().Value) { //Console.WriteLine("Cast q simp Emp"); QEmp.Cast(farm.Position, false); return; } } else { if (minions.Count(min => min.IsValid && !min.IsDead && min.Distance(getDashEndPos()) < QCir.Range) >= YasuoSharp.Config.Item("useEmpQHit").GetValue <Slider>().Value) { QCir.Cast(Player.Position, false); Console.WriteLine("Cast q circ simp"); } } } else { if (!isDashigPro) { List <Vector2> minionPs = YasMath.GetCastMinionsPredictedPositions(minions, getNewQSpeed() * 0.3f, 30f, float.MaxValue, Player.ServerPosition, 465, false, SkillshotType.SkillshotLine); Vector2 clos = Geometry.Closest(Player.ServerPosition.To2D(), minionPs); if (Player.Distance(clos) < 475) { Console.WriteLine("Cast q simp"); Q.Cast(clos, false); return; } } else { if (minions.Count(min => !min.IsDead && min.IsValid && min.Distance(getDashEndPos()) < QCir.Range) > 1) { QCir.Cast(Player.Position, false); Console.WriteLine("Cast q circ simp"); return; } } } } }