private void CastR(Obj_AI_Hero target, float dmg) { if (menu.Item("overKill", true).GetValue <bool>() && Player.GetSpellDamage(target, SpellSlot.Q) > target.Health) { return; } if (Player.Distance(target) > R.Range) { return; } //DFG + R if (Dfg.IsReady() && R.IsReady() && Player.Distance(target.ServerPosition) < R.Range && Player.GetItemDamage(target, Damage.DamageItems.Dfg) + (Player.GetSpellDamage(target, SpellSlot.R) * 1.2) > target.Health + 50) { Use_DFG(target); R.CastOnUnit(target, packets()); return; } if (dmg > target.Health + 20 && R.IsReady()) { R.CastOnUnit(target, packets()); } }
private float GetComboDamage(Obj_AI_Base enemy) { if (enemy == null) return 0; double damage = 0d; if (Q.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.Q); damage += Player.GetSpellDamage(enemy, SpellSlot.Q, 1); } if (Dfg.IsReady()) damage += Player.GetItemDamage(enemy, Damage.DamageItems.Dfg) / 1.2; if (W.IsReady()) damage += Player.GetSpellDamage(enemy, SpellSlot.W); if (_rOn) damage += Player.GetSpellDamage(enemy, SpellSlot.R)*RCount(); else if (R.IsReady()) damage += Player.GetSpellDamage(enemy, SpellSlot.R) * 3; damage = ActiveItems.CalcDamage(enemy, damage); if (E.IsReady()) damage += Player.GetSpellDamage(enemy, SpellSlot.E); return (float)damage; }
private float GetComboDamage(Obj_AI_Base enemy) { double damage = 0d; if (Q.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.Q) * 2; } if (Dfg.IsReady()) { damage += Player.GetItemDamage(enemy, Damage.DamageItems.Dfg) / 1.2; } if (E.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.E); } if (R.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.R) * 3; } if (Dfg.IsReady()) { damage = damage * 1.2; } damage = ActiveItems.CalcDamage(enemy, damage); return((float)damage); }
private float GetComboDamage(Obj_AI_Base enemy) { if (enemy == null) { return(0); } double damage = 0d; if (Q.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.Q); damage += Player.GetSpellDamage(enemy, SpellSlot.Q, 1); } if (Dfg.IsReady()) { damage += Player.GetItemDamage(enemy, Damage.DamageItems.Dfg) / 1.2; } if (W.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.W); } if (_rOn) { damage += Player.GetSpellDamage(enemy, SpellSlot.R) * RCount(); } else if (R.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.R) * 3; } if (enemy.HasBuffOfType(BuffType.Charm) || enemy.HasBuffOfType(BuffType.Taunt)) { damage = damage * 1.2; } damage = ActiveItems.CalcDamage(enemy, damage); if (E.IsReady()) { damage += Player.GetSpellDamage(enemy, SpellSlot.E); } return((float)damage); }
private void SmartKs() { if (!menu.Item("smartKS", true).GetValue <bool>()) { return; } if (menu.Item("rCancel", true).GetValue <bool>() && countEnemiesNearPosition(Player.ServerPosition, 570) > 1) { return; } foreach (Obj_AI_Hero target in ObjectManager.Get <Obj_AI_Hero>().Where(x => x.IsValidTarget(1375) && !x.HasBuffOfType(BuffType.Invulnerability)).OrderByDescending(GetComboDamage)) { if (target != null) { var delay = menu.Item("E_Delay_Slider", true).GetValue <Slider>().Value; bool shouldE = !menu.Item("KS_With_E", true).GetValue <KeyBind>().Active&& Environment.TickCount - E.LastCastAttemptT > 0; //QEW if (Player.Distance(target.ServerPosition) <= E.Range && shouldE && (Player.GetSpellDamage(target, SpellSlot.E) + Player.GetSpellDamage(target, SpellSlot.Q) + Player.GetSpellDamage(target, SpellSlot.Q, 1) + Player.GetSpellDamage(target, SpellSlot.W)) > target.Health + 20) { if (E.IsReady() && Q.IsReady() && W.IsReady()) { CancelUlt(target); Q.Cast(target, packets()); E.Cast(target, packets()); E.LastCastAttemptT = Environment.TickCount + delay; if (Player.Distance(target.ServerPosition) < W.Range) { W.Cast(); } return; } } //E + W if (Player.Distance(target.ServerPosition) <= E.Range && shouldE && (Player.GetSpellDamage(target, SpellSlot.E) + Player.GetSpellDamage(target, SpellSlot.W)) > target.Health + 20) { if (E.IsReady() && W.IsReady()) { CancelUlt(target); E.Cast(target, packets()); E.LastCastAttemptT = Environment.TickCount + delay; if (Player.Distance(target.ServerPosition) < W.Range) { W.Cast(); } //Game.PrintChat("ks 5"); return; } } //E + Q if (Player.Distance(target.ServerPosition) <= E.Range && shouldE && (Player.GetSpellDamage(target, SpellSlot.E) + Player.GetSpellDamage(target, SpellSlot.Q)) > target.Health + 20) { if (E.IsReady() && Q.IsReady()) { CancelUlt(target); E.Cast(target, packets()); E.LastCastAttemptT = Environment.TickCount + delay; Q.Cast(target, packets()); //Game.PrintChat("ks 6"); return; } } //Q if ((Player.GetSpellDamage(target, SpellSlot.Q)) > target.Health + 20) { if (Q.IsReady() && Player.Distance(target.ServerPosition) <= Q.Range) { CancelUlt(target); Q.Cast(target, packets()); //Game.PrintChat("ks 7"); return; } if (Q.IsReady() && E.IsReady() && Player.Distance(target.ServerPosition) <= 1375 && menu.Item("wardKs", true).GetValue <bool>() && countEnemiesNearPosition(target.ServerPosition, 500) < 3) { CancelUlt(target); JumpKs(target); //Game.PrintChat("wardKS!!!!!"); return; } } //E if (Player.Distance(target.ServerPosition) <= E.Range && shouldE && (Player.GetSpellDamage(target, SpellSlot.E)) > target.Health + 20) { if (E.IsReady()) { CancelUlt(target); E.Cast(target, packets()); E.LastCastAttemptT = Environment.TickCount + delay; //Game.PrintChat("ks 8"); return; } } //R if (Player.Distance(target.ServerPosition) <= E.Range && (Player.GetSpellDamage(target, SpellSlot.R) * 5) > target.Health + 20 && menu.Item("rKS", true).GetValue <bool>()) { if (R.IsReady()) { R.Cast(); //Game.PrintChat("ks 8"); return; } } if (menu.Item("dfgKS", true).GetValue <bool>()) { //dfg if (Dfg.IsReady() && Player.GetItemDamage(target, Damage.DamageItems.Dfg) > target.Health + 20 && Player.Distance(target.ServerPosition) <= 750) { Items.UseItem(Dfg.Id, target); //Game.PrintChat("ks 1"); return; } //dfg + q if (Player.Distance(target.ServerPosition) <= Q.Range && (Player.GetItemDamage(target, Damage.DamageItems.Dfg) + (Player.GetSpellDamage(target, SpellSlot.Q)) * 1.2) > target.Health + 20) { if (Dfg.IsReady() && Q.IsReady()) { Items.UseItem(Dfg.Id, target); CancelUlt(target); Q.Cast(target, packets()); //Game.PrintChat("ks 2"); return; } } //dfg + e if (Player.Distance(target.ServerPosition) <= E.Range && (Player.GetItemDamage(target, Damage.DamageItems.Dfg) + (Player.GetSpellDamage(target, SpellSlot.E)) * 1.2) > target.Health + 20) { if (Dfg.IsReady() && E.IsReady()) { Items.UseItem(Dfg.Id, target); CancelUlt(target); E.Cast(target, packets()); E.LastCastAttemptT = Environment.TickCount + delay; //Game.PrintChat("ks 3"); return; } } } } } }