private static void OnTick(EventArgs args) { if (doubleClickReset <= Environment.TickCount && clickCount != 0) { doubleClickReset = float.MaxValue; clickCount = 0; } if (passiveTimer <= Environment.TickCount) { PassiveStacks = 0; } if (myHero.IsDead || MenuGUI.IsChatOpen || myHero.IsRecalling()) { return; } if (TargetSelector.GetTarget(Q.Range, DamageType.Physical) == null) { insecComboStep = InsecComboStepSelect.None; } if (starCombo) { WardCombo(); } if (ElLeeSinIgniteKS) { var newTarget = TargetSelector.GetTarget(600, DamageType.True); if (newTarget != null && ignite != null && ignite.IsReady() && ObjectManager.Player.GetSummonerSpellDamage(newTarget, DamageLibrary.SummonerSpells.Ignite) > newTarget.Health) { ignite.Cast(newTarget); } } if (InsecEnabled) { if (insecOrbwalk) { Orbwalk(Game.CursorPos); } var newTarget = TargetSelector.GetTarget(Q.Range, DamageType.Physical); if (newTarget != null && R.IsReady()) { InsecCombo(newTarget); } } else { isNullInsecPos = true; } if (!Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)) { insecComboStep = InsecComboStepSelect.None; } if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)) { Combo(); } else if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear)) { AllClear(); JungleClear(); } else if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass)) { Harass(); } if (ElLeeSinWardjump) { Orbwalk(Game.CursorPos); WardjumpToMouse(); } if (ElLeeSinInsecUseInstaFlash) { Orbwalk(Game.CursorPos); var target = TargetSelector.GetTarget(flashSlot.Range - 25, DamageType.Physical); if (target == null) { return; } if (!R.IsReady() && !flashSlot.IsReady()) { castR = false; return; } if (GetInsecPos(target).Distance(myHero.Position) < 425 && ElLeeSinInsecUseInstaFlash && flashSlot.IsReady() && R.IsReady()) { flashSlot.Cast(GetInsecPos(target)); castR = true; return; } if (R.IsReady() && !target.IsZombie && R.IsInRange(target) && castR) { R.Cast(target); castR = false; } } if (ElLeeSinComboNew) { float leeSinRKickDistance = 700; float leeSinRKickWidth = 100; var minREnemies = ElLeeSinComboRCount; foreach (var enemy in EntityManager.Heroes.Enemies) { var startPos = enemy.ServerPosition; var endPos = myHero.ServerPosition.Extend(startPos, myHero.Distance(enemy) + leeSinRKickDistance); var rectangle = new Geometry.Polygon.Rectangle(startPos, endPos, leeSinRKickWidth); if (EntityManager.Heroes.Enemies.Count(x => rectangle.IsInside(x)) >= minREnemies) { R.Cast(enemy); } } } }
private static void OnProcessSpell(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { if (!sender.IsMe) { return; } if (SpellNames.Contains(args.SData.Name)) { PassiveStacks = 2; passiveTimer = Environment.TickCount + 3000; } if (args.SData.Name == "BlindMonkQOne") { castQAgain = false; Core.DelayAction(delegate { castQAgain = true; }, 2900); } if (R.IsReady() && flashSlot.IsReady()) { var target = TargetSelector.GetTarget(R.Range, DamageType.Physical); if (target == null) { return; } } if (args.SData.Name == "summonerflash" && insecComboStep != InsecComboStepSelect.None) { var target = TargetSelector.GetTarget(Q.Range, DamageType.Physical); insecComboStep = InsecComboStepSelect.Pressr; Core.DelayAction(delegate { R.Cast(target); }, 80); } if (args.SData.Name == "blindmonkqtwo") { waitingForQ2 = true; Core.DelayAction(delegate { waitingForQ2 = false; }, 3000); } if (args.SData.Name == "BlindMonkRKick") { insecComboStep = InsecComboStepSelect.None; } switch (args.SData.Name) { case "BlindMonkQOne": LastQ = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; break; case "BlindMonkWOne": LastW = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; break; case "BlindMonkEOne": LastE = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; break; case "blindmonkqtwo": LastQ2 = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; CheckQ = false; break; case "blindmonkwtwo": LastW2 = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; break; case "blindmonketwo": LastQ = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; break; case "BlindMonkRKick": LastR = Environment.TickCount; LastSpell = Environment.TickCount; PassiveStacks = 2; break; } }
private static void Combo() { var target = TargetSelector.GetTarget(Q.Range, DamageType.Physical); if (target == null) { return; } UseItems(target); if (Q.IsReady() && Q.Name == "BlindMonkQOne" && ElLeeSinComboQ) { CastQ(target, ElLeeSinSmiteQ); } if (!target.IsZombie && R.IsReady() && ElLeeSinComboR && ElLeeSinComboQ && target.IsValidTarget(R.Range) && (myHero.GetSpellDamage(target, SpellSlot.R) >= target.Health || target.HasQBuff() && target.Health < myHero.GetSpellDamage(target, SpellSlot.R) + Q2Damage(target, myHero.GetSpellDamage(target, SpellSlot.R)))) { R.Cast(target); } if (target.HasQBuff() && ElLeeSinComboQ2) { if (!target.IsZombie && target.HasQBuff() && target.Health < myHero.GetSpellDamage(target, SpellSlot.R) + Q2Damage(target, myHero.GetSpellDamage(target, SpellSlot.R))) { if (ElLeeSinComboKSR) { R.Cast(target); } } var prediction = Q.GetPrediction(target); if (castQAgain || target.HasBuffOfType(BuffType.Knockback) && !myHero.IsValidTarget(300) && !R.IsReady() && prediction.HitChance >= HitChance.High || !target.IsValidTarget(myHero.GetAutoAttackRange()) || myHero.GetSpellDamage(target, SpellSlot.R, DamageLibrary.SpellStages.SecondCast) > target.Health || ReturnQBuff().Distance(target) < myHero.Distance(target) && !target.IsValidTarget(myHero.GetAutoAttackRange())) { Q.Cast(target); } } if (!target.IsZombie && myHero.GetSpellDamage(target, SpellSlot.R) >= target.Health && ElLeeSinComboKSR && target.IsValidTarget()) { R.Cast(target); } if (ElLeeSinComboAAStacks && PassiveStacks > ElLeeSinComboPassiveStacks && myHero.GetAutoAttackRange() > myHero.Distance(target)) { return; } if (ElLeeSinComboW) { if (ElLeeSinComboModeWW && target.Distance(myHero) > myHero.GetAutoAttackRange()) { WardJump(target.Position, false, true); } if (!ElLeeSinComboModeWW && target.Distance(myHero) > Q.Range) { WardJump(target.Position, false, true); } } if (E.IsReady() && ElLeeSinComboE) { if (EState && E.IsInRange(target)) { E.Cast(); LastSpell = Environment.TickCount; return; } if (!EState && E.IsInRange(target) && LastE + 400 < Environment.TickCount) { E.Cast(); LastSpell = Environment.TickCount; } } if (W.IsReady() && ElLeeSinComboW2) { if (WState && myHero.Distance(target) <= myHero.GetAutoAttackRange()) { W.Cast(myHero); LastW = Environment.TickCount; return; } if (!WState && target.Distance(myHero) <= myHero.GetAutoAttackRange() && LastW + 200 < Environment.TickCount) { W.Cast(myHero); } } }