private static void Tick() { if (!Program.Config.Item("smiteEnabled").GetValue <KeyBind>().Active) { return; } Obj_AI_Base selectedMinion = MinionManager.GetMinions(1100, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth) .FirstOrDefault( minion => minion.Health > 0 && Program.Config.Item(minion.BaseSkinName) != null && Program.Config.Item(minion.BaseSkinName).GetValue <bool>()); if (selectedMinion == null) { return; } if (GetSmiteDamage() >= selectedMinion.Health && Player.Distance(selectedMinion) <= 700 || _checkForSmite && Player.Distance(selectedMinion) < 100) { Player.Spellbook.CastSpell(Player.GetSpellSlot(CheckHandler.SmiteSpellName()), selectedMinion); _checkForSmite = false; } if (!CheckHandler._spells[SpellSlot.Q].IsReady()) { return; } if (selectedMinion.HasQBuff() && CheckHandler.Q2Damage(selectedMinion, (float)GetSmiteDamage(), true) + GetSmiteDamage() > selectedMinion.Health && !CheckHandler.QState) { CheckHandler._spells[SpellSlot.Q].Cast(); _checkForSmite = true; } if ( CheckHandler.Q2Damage( selectedMinion, (float)GetSmiteDamage() + CheckHandler._spells[SpellSlot.Q].GetDamage(selectedMinion), true) + GetSmiteDamage() + CheckHandler._spells[SpellSlot.Q].GetDamage(selectedMinion) > selectedMinion.Health && CheckHandler.QState) { CheckHandler._spells[SpellSlot.Q].Cast(selectedMinion); } }
public static void Combo() { var target = TargetSelector.GetTarget(1200, TargetSelector.DamageType.Physical); if (!target.IsValidTarget()) { return; } var useQ = Program.Config.Item("CQ").GetValue <bool>(); var useE = Program.Config.Item("CE").GetValue <bool>(); var useR = Program.Config.Item("CR").GetValue <bool>(); var forcePassive = Program.Config.Item("CpassiveCheck").GetValue <bool>(); var minPassive = Program.Config.Item("CpassiveCheckCount").GetValue <Slider>().Value; CheckHandler.UseItems(target); if (useR && useQ && CheckHandler._spells[SpellSlot.R].IsReady() && CheckHandler._spells[SpellSlot.Q].IsReady() && (CheckHandler.QState || target.HasQBuff()) && CheckHandler._spells[SpellSlot.R].GetDamage(target) + (CheckHandler.QState ? CheckHandler._spells[SpellSlot.Q].GetDamage(target) : 0) + CheckHandler.Q2Damage( target, CheckHandler._spells[SpellSlot.R].GetDamage(target) + (CheckHandler.QState ? CheckHandler._spells[SpellSlot.Q].GetDamage(target) : 0)) > target.Health) { if (CheckHandler.QState) { CheckHandler._spells[SpellSlot.Q].CastIfHitchanceEquals(target, HitChance.High); return; } CheckHandler._spells[SpellSlot.R].CastOnUnit(target); Utility.DelayAction.Add(300, () => CheckHandler._spells[SpellSlot.Q].Cast()); } if (useR && CheckHandler._spells[SpellSlot.R].IsReady() && CheckHandler._spells[SpellSlot.R].GetDamage(target) > target.Health) { CheckHandler._spells[SpellSlot.R].CastOnUnit(target); return; } if (useQ && !CheckHandler.QState && CheckHandler._spells[SpellSlot.Q].IsReady() && target.HasQBuff() && (CheckHandler.LastQ + 2700 < Environment.TickCount || CheckHandler._spells[SpellSlot.Q].GetDamage(target, 1) > target.Health || target.Distance(Player) > Orbwalking.GetRealAutoAttackRange(Player) + 50)) { CheckHandler._spells[SpellSlot.Q].Cast(); return; } if (forcePassive && CheckHandler.PassiveStacks > minPassive && Orbwalking.GetRealAutoAttackRange(Player) > Player.Distance(target)) { return; } if (CheckHandler._spells[SpellSlot.Q].IsReady() && useQ) { if (CheckHandler.QState && target.Distance(Player) < CheckHandler._spells[SpellSlot.Q].Range) { CastQ(target, Program.Config.Item("smiteQ").GetValue <bool>()); return; } } if (CheckHandler._spells[SpellSlot.E].IsReady() && useE) { if (CheckHandler.EState && target.Distance(Player) < CheckHandler._spells[SpellSlot.E].Range - 50) { CheckHandler._spells[SpellSlot.E].Cast(); return; } if (!CheckHandler.EState && target.Distance(Player) > Orbwalking.GetRealAutoAttackRange(Player) + 50) { CheckHandler._spells[SpellSlot.E].Cast(); } } //SuperDuperUlt(); }