void Combo() { float range = 0; if (SpellSlot.R.IsReady()) { range = Spells[R].Range; } else if (Spells[Q2].IsReady()) { range = Spells[Q2].Range; } else if (Spells[E].IsReady()) { range = Spells[E].Range; } CurrentTarget = TargetSelector.GetTarget(range, DamageType.Physical); CastQ(CurrentTarget); if (GetBool("Combo.UseE", YasuoMenu.ComboM) && !Helper.DontDash) { CastE(CurrentTarget); } if (GetBool("Items.Enabled", YasuoMenu.ComboM)) { if (GetBool("Items.UseTIA", YasuoMenu.ComboM)) { Tiamat.Cast(null); } if (GetBool("Items.UseHDR", YasuoMenu.ComboM)) { Hydra.Cast(null); } if (GetBool("Items.UseTitanic", YasuoMenu.ComboM)) { Titanic.Cast(null); } if (GetBool("Items.UseBRK", YasuoMenu.ComboM) && CurrentTarget != null) { Blade.Cast(CurrentTarget); } if (GetBool("Items.UseBLG", YasuoMenu.ComboM) && CurrentTarget != null) { Bilgewater.Cast(CurrentTarget); } if (GetBool("Items.UseYMU", YasuoMenu.ComboM)) { Youmu.Cast(null); } } }
void Waveclear() { if (SpellSlot.Q.IsReady() && !Yasuo.LSIsDashing() && !InDash) { if (!TornadoReady && GetBool("Waveclear.UseQ", YasuoMenu.WaveclearM) && Orbwalker.IsAutoAttacking) { var minion = ObjectManager.Get <Obj_AI_Minion>() .Where(x => x.IsValidMinion(Spells[Q].Range) && ((x.IsDashable() && (x.Health - Yasuo.LSGetSpellDamage(x, SpellSlot.Q) >= GetProperEDamage(x))) || (x.Health - Yasuo.LSGetSpellDamage(x, SpellSlot.Q) >= 0.15 * x.MaxHealth || x.QCanKill()))).MaxOrDefault(x => x.MaxHealth); if (minion != null) { Spells[Q].Cast(minion); LastTornadoClearTick = Helper.TickCount; } } else if (TornadoReady && GetBool("Waveclear.UseQ2", YasuoMenu.WaveclearM)) { var minions = ObjectManager.Get <Obj_AI_Minion>().Where(x => x.LSDistance(Yasuo) > Yasuo.AttackRange && x.IsValidMinion(Spells[Q2].Range) && ((x.IsDashable() && x.Health - Yasuo.LSGetSpellDamage(x, SpellSlot.Q) >= 0.85 * GetProperEDamage(x)) || (x.Health - Yasuo.LSGetSpellDamage(x, SpellSlot.Q) >= 0.10 * x.MaxHealth) || x.CanKill(SpellSlot.Q))); var pred = MinionManager.GetBestLineFarmLocation(minions.Select(m => m.ServerPosition.LSTo2D()).ToList(), Spells[Q2].Width, Spells[Q2].Range); if (pred.MinionsHit >= GetSliderInt("Waveclear.Qcount", YasuoMenu.WaveclearM)) { Spells[Q2].Cast(pred.Position); } } } if (Helper.TickCount - LastTornadoClearTick < 500) { return; } if (SpellSlot.E.IsReady() && GetBool("Waveclear.UseE", YasuoMenu.WaveclearM) && (!GetBool("Waveclear.Smart", YasuoMenu.WaveclearM) || isHealthy) && (Helper.TickCount - WCLastE) >= GetSliderInt("Waveclear.Edelay", YasuoMenu.WaveclearM)) { var minions = ObjectManager.Get <Obj_AI_Minion>().Where(x => x.IsDashable() && ((GetBool("Waveclear.UseENK", YasuoMenu.WaveclearM) && (!GetBool("Waveclear.Smart", YasuoMenu.WaveclearM) || x.Health - GetProperEDamage(x) > GetProperEDamage(x) * 3)) || x.ECanKill()) && (GetBool("Waveclear.ETower", YasuoMenu.WaveclearM) || GetKeyBind("Misc.TowerDive", YasuoMenu.MiscM) || !GetDashPos(x).PointUnderEnemyTurret())); Obj_AI_Minion minion = null; minion = minions.OrderBy(x => x.ECanKill()).ThenBy(x => GetDashPos(x).MinionsInRange(200)).FirstOrDefault(); if (minion != null) { Spells[E].Cast(minion); WCLastE = Helper.TickCount; } } if (GetBool("Waveclear.UseItems", YasuoMenu.WaveclearM)) { if (GetBool("Waveclear.UseTIA", YasuoMenu.WaveclearM)) { Tiamat.minioncount = GetSliderInt("Waveclear.MinCountHDR", YasuoMenu.WaveclearM); Tiamat.Cast(null, true); } if (GetBool("Waveclear.UseTitanic", YasuoMenu.WaveclearM)) { Titanic.minioncount = GetSliderInt("Waveclear.MinCountHDR", YasuoMenu.WaveclearM); Titanic.Cast(null, true); } if (GetBool("Waveclear.UseHDR", YasuoMenu.WaveclearM)) { Hydra.minioncount = GetSliderInt("Waveclear.MinCountHDR", YasuoMenu.WaveclearM); Hydra.Cast(null, true); } if (GetBool("Waveclear.UseYMU", YasuoMenu.WaveclearM)) { Youmu.minioncount = GetSliderInt("Waveclear.MinCountYOU", YasuoMenu.WaveclearM); Youmu.Cast(null, true); } } }
void Combo() { float range = 0; if (SpellSlot.R.IsReady()) { range = Spells[R].Range; } else if (Spells[Q2].IsReady()) { range = Spells[Q2].Range; } else if (Spells[E].IsReady()) { range = Spells[E].Range; } CurrentTarget = TargetSelector.GetTarget(range, DamageType.Physical); if (GetBool("Combo.UseEQ", YasuoMenu.ComboM)) { PerformEQ(); } CastQ(CurrentTarget); if (GetBool("Combo.UseE", YasuoMenu.ComboM)) { var emode = GetEMode(); if (emode == EMode.New) { CastENew(); } else { CastEOld(CurrentTarget); } } if (GetBool("Items.Enabled", YasuoMenu.ComboM)) { if (GetBool("Items.UseTIA", YasuoMenu.ComboM)) { Tiamat.Cast(null); } if (GetBool("Items.UseHDR", YasuoMenu.ComboM)) { Hydra.Cast(null); } if (GetBool("Items.UseTitanic", YasuoMenu.ComboM)) { Titanic.Cast(null); } if (GetBool("Items.UseBRK", YasuoMenu.ComboM) && CurrentTarget != null) { Blade.Cast(CurrentTarget); } if (GetBool("Items.UseBLG", YasuoMenu.ComboM) && CurrentTarget != null) { Bilgewater.Cast(CurrentTarget); } if (GetBool("Items.UseYMU", YasuoMenu.ComboM)) { Youmu.Cast(null); } } }
void Combo() { float range = 0; if (SpellSlot.R.IsReady()) { range = Spells[R].Range; } else if (Spells[Q2].IsReady()) { range = Spells[Q2].Range; } else if (Spells[E].IsReady()) { range = Spells[E].Range; } CurrentTarget = TargetSelector.GetTarget(range, TargetSelector.DamageType.Physical); CastQ(CurrentTarget); if (GetBool("Combo.UseE") && !Helper.DontDash) { var mode = GetMode(); if (mode == Modes.Old) { CastEOld(CurrentTarget); } else { CastENew(CurrentTarget); } } if (GetBool("Combo.UseIgnite")) { CastIgnite(); } if (GetBool("Items.Enabled")) { if (GetBool("Items.UseTIA")) { Tiamat.Cast(null); } if (GetBool("Items.UseHDR")) { Hydra.Cast(null); } if (GetBool("Items.UseTitanic")) { Titanic.Cast(null); } if (GetBool("Items.UseBRK") && CurrentTarget != null) { Blade.Cast(CurrentTarget); } if (GetBool("Items.UseBLG") && CurrentTarget != null) { Bilgewater.Cast(CurrentTarget); } if (GetBool("Items.UseYMU")) { Youmu.Cast(null); } } }
private void Waveclear() { if (SpellSlot.Q.IsReady() && !Yasuo.IsDashing()) { if (!TornadoReady && YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseQ")) { var minion = ObjectManager.Get <Obj_AI_Minion>() .Where( x => x.IsValidMinion(Spells[Q].Range) && ((x.IsDashable() && (x.Health - Yasuo.GetSpellDamage(x, SpellSlot.Q) >= GetProperEDamage(x))) || x.Health - Yasuo.GetSpellDamage(x, SpellSlot.Q) >= 0.15 * x.MaxHealth || x.QCanKill())) .MaxOrDefault(x => x.MaxHealth); if (minion != null) { Spells[Q].Cast(minion.ServerPosition); } } else if (TornadoReady && YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseQ2")) { var minions = ObjectManager.Get <Obj_AI_Minion>() .Where( x => x.Distance(Yasuo) > Yasuo.AttackRange && x.IsValidMinion(Spells[Q2].Range) && ((x.IsDashable() && x.Health - Yasuo.GetSpellDamage(x, SpellSlot.Q) >= 0.85 * GetProperEDamage(x)) || (x.Health - Yasuo.GetSpellDamage(x, SpellSlot.Q) >= 0.10 * x.MaxHealth) || x.CanKill(SpellSlot.Q))); var pred = MinionManager.GetBestLineFarmLocation(minions.Select(m => m.ServerPosition.To2D()).ToList(), Spells[Q2].Width, Spells[Q2].Range); if (pred.MinionsHit >= YasuoMenu.getSliderItem(YasuoMenu.WaveclearA, "Waveclear.Qcount")) { Spells[Q2].Cast(pred.Position); } } } if (SpellSlot.E.IsReady() && YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseE") && (!YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.Smart") || isHealthy)) { var minions = ObjectManager.Get <Obj_AI_Minion>() .Where( x => x.IsDashable() && ((YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseENK") && (!YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.Smart") || x.Health - GetProperEDamage(x) > GetProperEDamage(x) * 3)) || x.ECanKill()) && (YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.ETower") || YasuoMenu.getKeyBindItem(YasuoMenu.MiscA, "Misc.TowerDive") || !GetDashPos(x).PointUnderEnemyTurret())); Obj_AI_Minion minion = null; minion = minions.MaxOrDefault(x => GetDashPos(x).MinionsInRange(200)); if (minion != null) { Spells[E].Cast(minion); } } if (YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseItems")) { if (YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseTIA")) { Tiamat.minioncount = YasuoMenu.getSliderItem(YasuoMenu.WaveclearA, "Waveclear.MinCountHDR"); Tiamat.Cast(null, true); } if (YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseHDR")) { Hydra.minioncount = YasuoMenu.getSliderItem(YasuoMenu.WaveclearA, "Waveclear.MinCountHDR"); Hydra.Cast(null, true); } if (YasuoMenu.getCheckBoxItem(YasuoMenu.WaveclearA, "Waveclear.UseYMU")) { Youmu.minioncount = YasuoMenu.getSliderItem(YasuoMenu.WaveclearA, "Waveclear.MinCountYOU"); Youmu.Cast(null, true); } } }