public override void ExecuteJungle() { if (!Orbwalking.CanMove(1)) { return; } var jungleMobs = Utils.Utils.GetMobs(Q.Range, Utils.Utils.MobTypes.BigBoys); if (jungleMobs != null) { if (Q.CanCast(jungleMobs) && GetValue <StringList>("Jungle.Q").SelectedIndex != 0) { Q.Cast(jungleMobs); } if (E.CanCast(jungleMobs) && GetValue <StringList>("Jungle.E").SelectedIndex != 0) { E.Cast(jungleMobs); } } }
public override void GameOnUpdate(EventArgs args) { R.Range = 500 * (R.Level == 0 ? 1 : R.Level) + 1500; Obj_AI_Hero t; if (GetValue <StringList>("AutoWI").SelectedIndex != 0 && W.IsReady()) { foreach ( var hero in HeroManager.Enemies.Where(h => h.IsValidTarget(W.Range) && h.HasBuffOfType(BuffType.Stun))) { CastW(hero.Position, false); } } if (W.IsReady() && (GetValue <StringList>("AutoWI").SelectedIndex == 1 || (GetValue <StringList>("AutoWI").SelectedIndex == 2 && ComboActive))) { t = TargetSelector.GetTarget(W.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget(W.Range)) { if (t.HasBuffOfType(BuffType.Stun) || t.HasBuffOfType(BuffType.Snare) || t.HasBuffOfType(BuffType.Taunt) || t.HasBuffOfType(BuffType.Knockup) || t.HasBuff("zhonyasringshield") || t.HasBuff("Recall")) { CastW(t.Position); } if (t.HasBuffOfType(BuffType.Slow) && t.IsValidTarget(E.Range - 200)) { //W.Cast(t.Position.Extend(ObjectManager.Player.Position, +200)); //W.Cast(t.Position.Extend(ObjectManager.Player.Position, -200)); var hit = t.IsFacing(ObjectManager.Player) ? t.Position.Extend(ObjectManager.Player.Position, +200) : t.Position.Extend(ObjectManager.Player.Position, -200); CastW(hit); } } } if (Q.IsReady() && (GetValue <StringList>("AutoQI").SelectedIndex == 1 || (GetValue <StringList>("AutoQI").SelectedIndex == 2 && ComboActive))) { t = TargetSelector.GetTarget(Q.Range - 30, TargetSelector.DamageType.Physical); if (t.IsValidTarget(Q.Range) && (t.HasBuffOfType(BuffType.Stun) || t.HasBuffOfType(BuffType.Snare) || t.HasBuffOfType(BuffType.Taunt) || (t.Health <= ObjectManager.Player.GetSpellDamage(t, SpellSlot.Q) && !t.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + 65)))) { CastQ(t); } } if (GetValue <KeyBind>("UseQMC").Active) { t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); CastQ(t); } //if (GetValue<KeyBind>("UseEMC").Active) //{ // t = TargetSelector.GetTarget(E.Range - 50, TargetSelector.DamageType.Physical); // E.Cast(t); //} if (GetValue <KeyBind>("UseRMC").Active&& R.IsReady()) { foreach ( var e in HeroManager.Enemies.Where( e => e.IsValidTarget(R.Range) && ObjectManager.Player.CountEnemiesInRange(Orbwalking.GetRealAutoAttackRange(null) + 65) <= 1).OrderBy(e => e.Health)) { //Utils.MPing.Ping(enemy.Position.To2D()); R.CastOnUnit(e); } } //for (int i = 1; i < HeroManager.Enemies.Count(e => e.Health < R.GetDamage(e)); i++) //{ // Common.CommonGeometry.DrawBox(new Vector2(Drawing.Width * 0.45f, Drawing.Height * 0.80f), 125, 18, Color.Transparent, 1, System.Drawing.Color.Black); // Common.CommonGeometry.DrawText(CommonGeometry.Text, HeroManager.Enemies[i].ChampionName + " Killable", Drawing.Width * 0.455f, Drawing.Height * (0.803f + i * 50), SharpDX.Color.Wheat); //} if (GetValue <KeyBind>("UseEQC").Active&& E.IsReady() && Q.IsReady()) { t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget(E.Range) && t.Health < ObjectManager.Player.GetSpellDamage(t, SpellSlot.Q) + ObjectManager.Player.GetSpellDamage(t, SpellSlot.E) + 20 && E.CanCast(t)) { CastE(); //if (E.Cast(t) == Spell.CastStates.SuccessfullyCasted) // return; // E.Cast(t); CastQ(t); } } if ((!ComboActive && !HarassActive) || !Orbwalking.CanMove(100)) { return; } //var useQ = GetValue<bool>("UseQ" + (ComboActive ? "C" : "H")); var useW = GetValue <bool>("UseWC"); var useE = GetValue <bool>("UseEC"); var useR = GetValue <bool>("UseRC"); //if (Q.IsReady() && useQ) //{ // t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); // if (t != null) // { // CastQ(t); // } //} if (useE && E.IsReady()) { //var enemies = HeroManager.Enemies.Where(e => e.IsValidTarget(E.Range)); //var objAiHeroes = enemies as Obj_AI_Hero[] ?? enemies.ToArray(); //IEnumerable<Obj_AI_Hero> nResult = // (from e in objAiHeroes join d in dangerousEnemies on e.ChampionName equals d select e) // .Distinct(); //foreach (var n in nResult.Where(n => n.IsFacing(ObjectManager.Player))) //{ // if (n.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + 65 - 300) && E.GetPrediction(n).CollisionObjects.Count == 0) // { // E.Cast(n.Position); // if (W.IsReady()) // W.Cast(n.Position); // } //} //if (GetValue<bool>("E.ProtectDistance")) //{ // foreach (var n in HeroManager.Enemies) // { // if (GetValue<bool>("E." + n.ChampionName + ".ProtectDistance") && // n.Distance(ObjectManager.Player) < E.Range - 100) // { // E.Cast(n.Position); // } // } //} foreach ( var enemy in HeroManager.Enemies.Where( e => e.IsValidTarget(E.Range) && e.Health >= ObjectManager.Player.TotalAttackDamage * 2 && e.IsFacing(ObjectManager.Player) && e.IsValidTarget(E.Range - 300) && E.GetPrediction(e).CollisionObjects.Count == 0)) { E.Cast(enemy.Position); var targetBehind = enemy.Position.To2D().Extend(ObjectManager.Player.Position.To2D(), -140); if (W.IsReady() && ObjectManager.Player.Distance(targetBehind) <= W.Range) { W.Cast(enemy.Position); } if (Q.IsReady()) { Q.Cast(enemy.Position); } } } if (useW && W.IsReady()) { var nResult = HeroManager.Enemies.Where(e => e.IsValidTarget(W.Range)); foreach (var n in nResult) { if (ObjectManager.Player.Distance(n) < 450 && n.IsFacing(ObjectManager.Player)) { CastW(CommonGeometry.CenterOfVectors(new[] { ObjectManager.Player.Position, n.Position })); } } } if (R.IsReady() && useR) { foreach ( var e in HeroManager.Enemies.Where( e => e.IsValidTarget(R.Range) && e.Health <= R.GetDamage(e) && ObjectManager.Player.CountEnemiesInRange(Orbwalking.GetRealAutoAttackRange(null) + 350) == 0 && !Orbwalking.InAutoAttackRange(e) && canCastR)) { R.CastOnUnit(e); } } }
public override void GameOnUpdate(EventArgs args) { if (Orbwalking.CanMove(100) && (ComboActive || HarassActive)) { var useW = GetValue <bool>("UseW" + (ComboActive ? "C" : "H")); var useE = GetValue <bool>("UseE" + (ComboActive ? "C" : "H")); var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (!t.IsValidTarget() || t.HasKindredUltiBuff()) { return; } if (useW && W.IsReady() && t.IsValidTarget(W.Range)) { W.Cast(t, false, true); } if (ObjectManager.Get <Obj_AI_Hero>().Find(e1 => e1.IsValidTarget(E.Range) && E.IsKillable(e1)) != null) { E.Cast(); } var nShouldCastE = (t.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + 65) && E.IsKillable(t)) || (!t.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + 65) && t.GetBuffCount("TwitchDeadlyVenom") == 6); if (E.IsReady() && nShouldCastE) { E.Cast(); } //if (useE && E.IsReady() && t.GetBuffCount("TwitchDeadlyVenom") == 6) //{ // E.Cast(); //} } if (ComboActive) { var useR = GetValue <StringList>("Combo.UseR").SelectedIndex; if (useR != 0 && R.IsReady() && ObjectManager.Player.CountEnemiesInRange(R.Range - 100) >= useR) { R.Cast(); } } if (GetValue <bool>("UseEM") && E.IsReady()) { foreach ( var hero in ObjectManager.Get <Obj_AI_Hero>() .Where( hero => hero.IsValidTarget(E.Range) && (ObjectManager.Player.GetSpellDamage(hero, SpellSlot.E) - 10 > hero.Health))) { E.Cast(); } } }
public override void Game_OnGameUpdate(EventArgs args) { //var t1 = TargetSelector.GetTarget(2000, TargetSelector.DamageType.Physical); //if (t1.IsValidTarget()) //{ // if (t1.IsFacing(ObjectManager.Player)) // { // Console.WriteLine("--> Face " + t1.ChampionName); // } // else // { // Console.WriteLine(t1.ChampionName + " <-- Back"); // } //} /* * var x = HeroManager.Enemies.Find(e => !e.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null)) && e.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + QAddRange)); * if (x != null && !FishBoneActive && Q.IsReady()) * { * Q.Cast(); * Program.ChampionClass.Orbwalker.ForceTarget(x); * } */ if (Q.IsReady() && GetValue <bool>("SwapDistance") && Program.ChampionClass.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo) { var activeQ = ObjectManager.Player.Spellbook.GetSpell(SpellSlot.Q).Level * 25 + 650; var t = TargetSelector.GetTarget(activeQ, TargetSelector.DamageType.Physical); if (t.IsValidTarget() && ObjectManager.Player.Distance(t) > Orbwalking.GetRealAutoAttackRange(null) + 65) { if (!FishBoneActive) { Q.Cast(); Orbwalker.ForceTarget(t); return; } } if (!t.IsValidTarget() && FishBoneActive) { Q.Cast(); return; } } if (GetValue <bool>("PingCH")) { foreach (var enemy in HeroManager.Enemies.Where( t => R.IsReady() && t.IsValidTarget() && R.GetDamage(t) > t.Health && t.Distance(ObjectManager.Player) > Orbwalking.GetRealAutoAttackRange(null) + 65 + QAddRange)) { Utils.Utils.MPing.Ping(enemy.Position.To2D(), 2, PingCategory.Normal); } } var autoEi = GetValue <bool>("AutoEI"); var autoEs = GetValue <bool>("AutoES"); var autoEd = GetValue <bool>("AutoED"); //foreach (var e in HeroManager.Enemies.Where(e => e.IsValidTarget(E.Range))) //{ // if (E.IsReady() // && (e.HasBuffOfType(BuffType.Stun) || e.HasBuffOfType(BuffType.Snare) // || e.HasBuffOfType(BuffType.Charm) || e.HasBuffOfType(BuffType.Fear) || // e.HasBuffOfType(BuffType.Slow) // || e.HasBuffOfType(BuffType.Taunt) || e.HasBuff("zhonyasringshield") // || e.HasBuff("Recall"))) // { // E.Cast(e); // } //} if (autoEs || autoEi || autoEd) { foreach ( var enemy in ObjectManager.Get <Obj_AI_Hero>().Where(enemy => enemy.IsValidTarget(E.Range - 50))) { if (autoEs && E.IsReady() && enemy.HasBuffOfType(BuffType.Slow)) { var castPosition = Prediction.GetPrediction( new PredictionInput { Unit = enemy, Delay = 0.7f, Radius = 120f, Speed = 1750f, Range = 900f, Type = SkillshotType.SkillshotCircle }).CastPosition; if (GetSlowEndTime(enemy) >= (Game.Time + E.Delay + 0.5f)) { E.Cast(castPosition); } } if (E.IsReady() && (enemy.HasBuffOfType(BuffType.Stun) || enemy.HasBuffOfType(BuffType.Snare) || enemy.HasBuffOfType(BuffType.Charm) || enemy.HasBuffOfType(BuffType.Fear) || enemy.HasBuffOfType(BuffType.Slow) || enemy.HasBuffOfType(BuffType.Taunt) || enemy.HasBuff("zhonyasringshield") || enemy.HasBuff("Recall"))) { E.CastIfHitchanceEquals(enemy, HitChance.High); } else if (W.IsReady() && (enemy.HasBuffOfType(BuffType.Stun) || enemy.HasBuffOfType(BuffType.Snare) || enemy.HasBuffOfType(BuffType.Charm) || enemy.HasBuffOfType(BuffType.Fear) || enemy.HasBuffOfType(BuffType.Slow) || enemy.HasBuffOfType(BuffType.Taunt) || enemy.HasBuff("Recall"))) { W.CastIfHitchanceEquals(enemy, HitChance.High); } if (autoEd && E.IsReady() && enemy.IsDashing()) { E.CastIfHitchanceEquals(enemy, HitChance.Dashing); } } } if (GetValue <KeyBind>("CastR").Active&& R.IsReady()) { var t = TargetSelector.GetTarget(1500, TargetSelector.DamageType.Physical); if (t.IsValidTarget()) { if (ObjectManager.Player.GetSpellDamage(t, SpellSlot.R) > t.Health && !t.IsZombie) { R.CastIfHitchanceGreaterOrEqual(t); //R.CastIfHitchanceEquals(t, HitChance.High, false); } } } if (GetValue <bool>("SwapQ") && FishBoneActive && !ComboActive) { Q.Cast(); } if ((!ComboActive && !HarassActive) || !Orbwalking.CanMove(100)) { return; } var useW = GetValue <bool>("UseW" + (ComboActive ? "C" : "H")); var useR = GetValue <bool>("UseRC"); if (useW && W.IsReady()) { var t = TargetSelector.GetTarget(W.Range, TargetSelector.DamageType.Physical); var minW = GetValue <Slider>("MinWRange").Value; if (t.IsValidTarget() && !t.HasKindredUltiBuff() && GetRealDistance(t) >= minW) { W.CastIfHitchanceGreaterOrEqual(t); } } /* * if (useQ) * { * foreach (var t in * ObjectManager.Get<Obj_AI_Hero>() * .Where(t => t.IsValidTarget(GetRealPowPowRange(t) + QAddRange + 20f))) * { * var swapDistance = GetValue<bool>("SwapDistance"); * var swapAoe = GetValue<bool>("SwapAOE"); * var distance = GetRealDistance(t); * var powPowRange = GetRealPowPowRange(t); * * if (swapDistance && Q.IsReady()) * { * if (distance > powPowRange && !FishBoneActive) * { * if (Q.Cast()) * { * return; * } * } * else if (distance < powPowRange && FishBoneActive) * { * if (Q.Cast()) * { * return; * } * } * } * * if (swapAoe && Q.IsReady()) * { * if (distance > powPowRange && PowPowStacks > 2 && !FishBoneActive && CountEnemies(t, 150) > 1) * { * if (Q.Cast()) * { * return; * } * } * } * } * } * */ if (useR && R.IsReady()) { var checkRok = GetValue <bool>("ROverKill"); var minR = GetValue <Slider>("MinRRange").Value; var maxR = GetValue <Slider>("MaxRRange").Value; var t = TargetSelector.GetTarget(maxR, TargetSelector.DamageType.Physical); if (t.IsValidTarget() && !t.HasKindredUltiBuff()) { var distance = GetRealDistance(t); if (!checkRok) { if (ObjectManager.Player.GetSpellDamage(t, SpellSlot.R, 1) > t.Health && !t.IsZombie) { R.CastIfHitchanceGreaterOrEqual(t); //R.CastIfHitchanceEquals(t, HitChance.High, false); //if (R.Cast(t) == Spell.CastStates.SuccessfullyCasted) { } } } else if (distance > minR) { var aDamage = ObjectManager.Player.GetAutoAttackDamage(t); var wDamage = ObjectManager.Player.GetSpellDamage(t, SpellSlot.W); var rDamage = ObjectManager.Player.GetSpellDamage(t, SpellSlot.R); var powPowRange = GetRealPowPowRange(t); if (distance < (powPowRange + QAddRange) && !(aDamage * 3.5 > t.Health)) { if (!W.IsReady() || !(wDamage > t.Health) || W.GetPrediction(t).CollisionObjects.Count > 0) { if (CountAlliesNearTarget(t, 500) <= 3) { if (rDamage > t.Health && !t.IsZombie /*&& !ObjectManager.Player.IsAutoAttacking && * !ObjectManager.Player.IsChanneling*/) { R.CastIfHitchanceGreaterOrEqual(t); //R.CastIfHitchanceEquals(t, HitChance.High, false); //if (R.Cast(t) == Spell.CastStates.SuccessfullyCasted) { } } } } } else if (distance > (powPowRange + QAddRange)) { if (!W.IsReady() || !(wDamage > t.Health) || distance > W.Range || W.GetPrediction(t).CollisionObjects.Count > 0) { if (CountAlliesNearTarget(t, 500) <= 3) { if (rDamage > t.Health && !t.IsZombie /*&& !ObjectManager.Player.IsAutoAttacking && * !ObjectManager.Player.IsChanneling*/) { R.CastIfHitchanceGreaterOrEqual(t); //R.CastIfHitchanceEquals(t, HitChance.High, false); //if (R.Cast(t) == Spell.CastStates.SuccessfullyCasted) { } } } } } } } } }
public override void GameOnUpdate(EventArgs args) { if (GetValue <bool>("PingCH")) { foreach (var enemy in HeroManager.Enemies.Where( enemy => R.IsReady() && enemy.IsValidTarget() && R.GetDamage(enemy) > enemy.Health)) { //Marksman.Utils.Utils.MPing.Ping(enemy.Position.To2D()); } } if (Q.IsReady() && GetValue <bool>("SwapDistance") && Program.ChampionClass.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo) { var nKillableEnemy = HeroManager.Enemies.Find(e => e.Health <= Q.GetDamage(e) * 2 && e.Health >= ObjectManager.Player.TotalAttackDamage * 4); var activeQ = ObjectManager.Player.Spellbook.GetSpell(SpellSlot.Q).Level * 25 + 650; var t = TargetSelector.GetTarget(activeQ, TargetSelector.DamageType.Physical); if (t.IsValidTarget() && !t.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + 65)) { if (!FishBoneActive) { Q.Cast(); Orbwalker.ForceTarget(t); return; } } } if (GetValue <bool>("PingCH")) { foreach (var enemy in HeroManager.Enemies.Where( t => R.IsReady() && t.IsValidTarget() && R.GetDamage(t) > t.Health && t.Distance(ObjectManager.Player) > Orbwalking.GetRealAutoAttackRange(null) + 65 + QExtraRange)) { Utils.Utils.MPing.Ping(enemy.Position.To2D(), 2, PingCategory.Normal); } } if (GetValue <bool>("SwapQ") && FishBoneActive && !ComboActive) { Q.Cast(); } if ((!ComboActive && !HarassActive) || !Orbwalking.CanMove(100)) { return; } var useR = GetValue <bool>("UseRC"); foreach (var t in ObjectManager.Get <Obj_AI_Hero>() .Where(t => t.IsValidTarget(GetRealPowPowRange(t) + QExtraRange + 20f))) { var swapDistance = GetValue <bool>("SwapDistance"); var swapAoe = GetValue <bool>("SwapAOE"); var distance = GetRealDistance(t); var powPowRange = GetRealPowPowRange(t); if (swapDistance && Q.IsReady()) { if (distance > powPowRange && !FishBoneActive) { if (Q.Cast()) { return; } } else if (distance < powPowRange && FishBoneActive) { if (Q.Cast()) { return; } } } if (swapAoe && Q.IsReady()) { if (distance > powPowRange && PowPowStacks > 2 && !FishBoneActive && CountEnemies(t, 150) > 1) { if (Q.Cast()) { return; } } } } //if (useR && R.IsReady()) //{ // var checkRok = GetValue<bool>("ROverKill"); // var minR = GetValue<Slider>("MinRRange").Value; // var maxR = GetValue<Slider>("MaxRRange").Value; // var t = TargetSelector.GetTarget(maxR, TargetSelector.DamageType.Physical); // if (t.IsValidTarget() && !t.HasKindredUltiBuff()) // { // var distance = GetRealDistance(t); // if (!checkRok) // { // if (ObjectManager.Player.GetSpellDamage(t, SpellSlot.R, 1) > t.Health && !t.IsZombie) // { // R.CastIfHitchanceGreaterOrEqual(t); // //R.CastIfHitchanceEquals(t, HitChance.High, false); // //if (R.Cast(t) == Spell.CastStates.SuccessfullyCasted) { } // } // } // else if (distance > minR) // { // var aDamage = ObjectManager.Player.GetAutoAttackDamage(t); // var wDamage = ObjectManager.Player.GetSpellDamage(t, SpellSlot.W); // var rDamage = ObjectManager.Player.GetSpellDamage(t, SpellSlot.R); // var powPowRange = GetRealPowPowRange(t); // if (distance < (powPowRange + QExtraRange) && !(aDamage * 3.5 > t.Health)) // { // if (!W.IsReady() || !(wDamage > t.Health) || W.GetPrediction(t).CollisionObjects.Count > 0) // { // if (CountAlliesNearTarget(t, 500) <= 3) // { // if (rDamage > t.Health && !t.IsZombie /*&& !ObjectManager.Player.IsAutoAttacking && // !ObjectManager.Player.IsChanneling*/) // { // R.CastIfHitchanceGreaterOrEqual(t); // //R.CastIfHitchanceEquals(t, HitChance.High, false); // //if (R.Cast(t) == Spell.CastStates.SuccessfullyCasted) { } // } // } // } // } // else if (distance > (powPowRange + QExtraRange)) // { // if (!W.IsReady() || !(wDamage > t.Health) || distance > W.Range // || W.GetPrediction(t).CollisionObjects.Count > 0) // { // if (CountAlliesNearTarget(t, 500) <= 3) // { // if (rDamage > t.Health && !t.IsZombie /*&& !ObjectManager.Player.IsAutoAttacking && // !ObjectManager.Player.IsChanneling*/) // { // R.CastIfHitchanceGreaterOrEqual(t); // //R.CastIfHitchanceEquals(t, HitChance.High, false); // //if (R.Cast(t) == Spell.CastStates.SuccessfullyCasted) { } // } // } // } // } // } // } //} }