private static void ShieldCombo(Obj_AI_Base target, bool useQ, bool useW, bool useE) { if (target.Check(Q.Range)) { if (Utils.TickCount - LastCastTime > 500) { if (useQ && Q.IsReady() && (SpellManager.FullStack || SpellManager.NoStack || (SpellManager.HalfStack && !W.IsReady() && Wcd > 1 && !E.IsReady() && Ecd > 1)) && target.IsValidTarget(Q.Range)) { var qPred = Q.GetPrediction(target); if (qPred.Hitchance >= HitChance.High) { Q.Cast(qPred.CastPosition, true); } } if (useW && W.IsReady() && (!SpellManager.FullStack || SpellManager.HaveShield) && target.IsValidTarget(W.Range) && ((Ecd >= 2) || target.HasBuff("ryzee"))) { W.CastOnUnit(target, true); } if (useE && E.IsReady() && (!SpellManager.FullStack || SpellManager.HaveShield) && target.IsValidTarget(E.Range)) { if (SpellManager.NoStack) { E.CastOnUnit(target, true); } var minion = MinionManager .GetMinions(Me.Position, E.Range, MinionTypes.All, MinionTeam.NotAlly) .FirstOrDefault( x => x.Health < E.GetDamage(x) && HeroManager.Enemies.Any(a => a.Distance(x.Position) <= 290)); E.CastOnUnit(minion ?? target, true); } } } }
private static void BurstCombo(Obj_AI_Base target, bool useQ, bool useW, bool useE) { if (target.Check(Q.Range)) { if (Utils.TickCount - LastCastTime > 500) { if (useW && W.IsReady() && target.IsValidTarget(W.Range)) { W.CastOnUnit(target, true); } if (useQ && Q.IsReady() && target.IsValidTarget(Q.Range)) { var qPred = Q.GetPrediction(target); if (qPred.Hitchance >= HitChance.High) { Q.Cast(qPred.CastPosition, true); } } if (useE && E.IsReady() && target.IsValidTarget(E.Range)) { E.CastOnUnit(target, true); } if (useQ && Q.IsReady() && target.IsValidTarget(Q.Range)) { var qPred = Q.GetPrediction(target); if (qPred.Hitchance >= HitChance.High) { Q.Cast(qPred.CastPosition, true); } } } } }