private static float ComboDamage(AIHeroClient target) { if (target != null) { float TotalDamage = 0; if (DemSpells.Q.IsLearned && DemSpells.Q.IsReady()) { TotalDamage += QDamage(target); } if (DemSpells.W.IsLearned && DemSpells.W.IsReady()) { TotalDamage += WDamage(target); } if (DemSpells.E.IsLearned && DemSpells.E.IsReady()) { TotalDamage += (float)((myhero.GetAutoAttackDamage(target) * (int)slider(combo, "AAMIN")) + (new float[] { 0, 1.4f, 1.55f, 1.7f, 1.85f, 2 }[DemSpells.E.Level] *myhero.TotalAttackDamage)); } if (DemSpells.R.IsLearned && DemSpells.R.IsReady()) { TotalDamage += (float)PassiveManager.GetPassiveDamage(target, 4); } else { TotalDamage += (float)PassiveManager.GetPassiveDamage(target, PassiveManager.GetPassiveCount(target)); } if (tiamat.IsOwned() && tiamat.IsReady() && tiamat.IsInRange(target.Position)) { TotalDamage += myhero.GetItemDamage(target, tiamat.Id); } if (rhydra.IsOwned() && rhydra.IsReady() && rhydra.IsInRange(target.Position)) { TotalDamage += myhero.GetItemDamage(target, rhydra.Id); } /* if (thydra.IsOwned() && thydra.IsReady()) * { TotalDamage += myhero.GetItemDamage(target, thydra.Id); }*/ if (cutl.IsOwned() && cutl.IsReady() && cutl.IsInRange(target.Position)) { TotalDamage += myhero.GetItemDamage(target, cutl.Id); } if (blade.IsOwned() && blade.IsReady() && blade.IsInRange(target.Position)) { TotalDamage += myhero.GetItemDamage(target, blade.Id); } return(TotalDamage); } return(0); }
private static void Combo() { var target = TargetSelector.GetTarget(1200, DamageType.Physical, Player.Instance.Position); if (target != null && target.IsValidTarget() && !target.IsInvulnerable) { var WPred = DemSpells.W.GetPrediction(target); PassiveManager.castAutoAttack(target); ItemManager(target); if (check(combo, "CQ") && DemSpells.Q.IsReady() && DemSpells.Q.IsInRange(target.Position)) { if (target.IsUnderHisturret()) { return; } switch (comb(pred, "QPREDMODE")) { case 0: PassiveManager.castQhelper(target); break; case 1: DemSpells.Q.Cast(target.Position); break; } } if (check(combo, "CW") && DemSpells.W.IsReady() && DemSpells.W.IsInRange(target.Position)) { switch (comb(pred, "WPREDMODE")) { case 0: if (slider(pred, "WPred") <= WPred.HitChancePercent) { DemSpells.W.Cast(WPred.CastPosition); } break; case 1: DemSpells.W.Cast(target.Position); break; } } if (check(combo, "CE") && DemSpells.E.IsReady() && target.Distance(myhero.Position) < DemSpells.E.Range) { DemSpells.E.Cast(); } if (check(combo, "CR") && DemSpells.R.IsReady() && target.Distance(myhero.Position) < DemSpells.R.Range && myhero.HealthPercent >= slider(combo, "CRMIN") && ComboDamage(target) > target.Health) { if ((ComboDamage(target) - PassiveManager.GetPassiveDamage(target, 4) > target.Health) || (ignt.IsReady() && myhero.GetSummonerSpellDamage(target, DamageLibrary.SummonerSpells.Ignite) > target.Health)) { return; } if (check(combo, "CRTURRET")) { var ClosestTurret = EntityManager.Turrets.Enemies.Where(x => x.IsTargetable).OrderBy(x => x.Distance(myhero.Position)).FirstOrDefault(); if (ClosestTurret.Distance(target.Position) > 900) { DemSpells.R.Cast(target); } } else { DemSpells.R.Cast(target); } } if (check(combo, "Cignt") && ignt.IsReady() && ignt.IsInRange(target.Position)) { if (target.Health > ComboDamage(target) && myhero.GetSummonerSpellDamage(target, DamageLibrary.SummonerSpells.Ignite) > target.Health && !check(misc, "autoign")) { ignt.Cast(target); } else if (target.Health > ComboDamage(target)) { if ((ComboDamage(target) + (myhero.GetSummonerSpellDamage(target, DamageLibrary.SummonerSpells.Ignite) - 5)) > target.Health) { ignt.Cast(target); } } } } }