public override void GameOnUpdate(EventArgs args) { if (!Orbwalking.CanMove(100)) { return; } var useQ = GetValue <bool>("UseQ" + (ComboActive ? "C" : "H")); if (ComboActive || HarassActive) { if (Q.IsReady() && useQ) { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t != null) { Q.Cast(t, false, true); } } } }
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) { 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 <AIHeroClient>() .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) { } // } // } // } // } // } // } //} }
public override void GameOnUpdate(EventArgs args) { R.Range = 500 * (R.Level == 0 ? 1 : R.Level) + 1500; AIHeroClient 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 AIHeroClient[] ?? enemies.ToArray(); //IEnumerable<AIHeroClient> 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 <AIHeroClient>().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 <AIHeroClient>() .Where( hero => hero.IsValidTarget(E.Range) && (ObjectManager.Player.GetSpellDamage(hero, SpellSlot.E) - 10 > hero.Health))) { E.Cast(); } } }
public override void GameOnUpdate(EventArgs args) { if (R1.IsReady() && GetValue <bool>("UseRM")) { bool bigRocket = HasBigRocket(); foreach ( AIHeroClient hero in ObjectManager.Get <AIHeroClient>() .Where( hero => hero.IsValidTarget(bigRocket ? R2.Range : R1.Range) && R1.GetDamage(hero) * (bigRocket ? 1.5f : 1f) > hero.Health)) { if (bigRocket) { R2.Cast(hero, false, true); } else { R1.Cast(hero, false, true); } } } if ((!ComboActive && !HarassActive) || !Orbwalking.CanMove(100)) { return; } var useQ = GetValue <bool>("UseQ" + (ComboActive ? "C" : "H")); var useE = GetValue <bool>("UseE" + (ComboActive ? "C" : "H")); var useR = GetValue <bool>("UseR" + (ComboActive ? "C" : "H")); var rLim = GetValue <Slider>("Rlim" + (ComboActive ? "C" : "H")).Value; if (useQ && Q.IsReady()) { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Magical); if (t != null) { if (Q.Cast(t, false, true) == Spell.CastStates.SuccessfullyCasted) { return; } } } if (useE && E.IsReady()) { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget()) { if (E.Cast(t, false, true) == Spell.CastStates.SuccessfullyCasted) { return; } } } if (useR && R1.IsReady() && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > rLim) { bool bigRocket = HasBigRocket(); AIHeroClient t = TargetSelector.GetTarget(bigRocket ? R2.Range : R1.Range, TargetSelector.DamageType.Magical); if (t.IsValidTarget()) { if (bigRocket) { R2.Cast(t, false, true); } else { R1.Cast(t, false, true); } } } }
public override void GameOnUpdate(EventArgs args) { //Chat.Print(ObjectManager.Player.BaseAbilityDamage.ToString() + " : " + ObjectManager.Player.BaseAttackDamage.ToString()); UltiBuffStacks = GetUltimateBuffStacks(); W.Range = 110 + 20 * ObjectManager.Player.Spellbook.GetSpell(SpellSlot.W).Level; R.Range = 900 + 300 * ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Level; if (R.IsReady() && GetValue <bool>("UseRM")) { foreach ( var hero in ObjectManager.Get <AIHeroClient>() .Where( hero => hero.IsValidTarget(R.Range) && R.GetDamage(hero) > hero.Health)) { CastR(hero); } } //R.Cast(hero, false, true); if ((!ComboActive && !HarassActive) || (!Orbwalking.CanMove(100) && !(ObjectManager.Player.BaseAbilityDamage + ObjectManager.Player.FlatMagicDamageMod > 100))) { return; } var useQ = GetValue <bool>("UseQ" + (ComboActive ? "C" : "H")); var useE = GetValue <bool>("UseE" + (ComboActive ? "C" : "H")); var useR = GetValue <bool>("UseR" + (ComboActive ? "C" : "H")); var rLim = GetValue <Slider>("Rlim" + (ComboActive ? "C" : "H")).Value; var t = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Magical); if (useQ && Q.IsReady() && t.IsValidTarget(Q.Range)) { CastQ(t); //if (Q.Cast(t) == Spell.CastStates.SuccessfullyCasted) // return; } if (useE && E.IsReady() && t.IsValidTarget(E.Range)) { CastE(t); //if (Q.Cast(t) == Spell.CastStates.SuccessfullyCasted) // return; } if (R.IsReady() && t.IsValidTarget(R.Range) && t.HealthPercent <= Program.Config.Item(t.ChampionName + "RHPPercent").GetValue <Slider>().Value) //if (GetValue<bool>("UseRSC") && R.IsReady() && t.IsValidTarget(R.Range)) { if (t.IsValidTarget() && (t.HasBuffOfType(BuffType.Stun) || t.HasBuffOfType(BuffType.Snare) || t.HasBuffOfType(BuffType.Slow) || t.HasBuffOfType(BuffType.Fear) || t.HasBuffOfType(BuffType.Taunt))) { CastR(t); //R.Cast(t, false, true); } } if (useR && R.IsReady() && UltiBuffStacks < rLim && t.IsValidTarget(R.Range) && t.HealthPercent <= Program.Config.Item(t.ChampionName + "RHPPercent").GetValue <Slider>().Value) { CastR(t); //R.Cast(t, false, true); } }
public override void GameOnUpdate(EventArgs args) { var enemy = HeroManager.Enemies.Find( e => e.Buffs.Any(b => b.Name.ToLower() == "quinnw_cosmetic" && e.IsValidTarget(E.Range))); if (enemy != null) { if (enemy.Distance(ObjectManager.Player.Position) > Orbwalking.GetRealAutoAttackRange(null) + 65) { EloBuddy.Player.IssueOrder(GameObjectOrder.MoveTo, enemy); } Orbwalker.ForceTarget(enemy); } if (Q.IsReady() && GetValue <KeyBind>("UseQTH").Active) { if (ObjectManager.Player.HasBuff("Recall")) { return; } var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t != null) { Q.Cast(t, false, true); } } if (ComboActive || HarassActive) { var useQ = GetValue <bool>("UseQ" + (ComboActive ? "C" : "H")); var useE = GetValue <bool>("UseE" + (ComboActive ? "C" : "H")); if (Orbwalking.CanMove(100)) { if (E.IsReady() && useE) { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget() && !t.IsZombie && !isHePantheon(t) && !t.HasBuff("QuinnW_Cosmetic")) { E.CastOnUnit(t); } } if (Q.IsReady() && useQ) { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget() && !t.IsZombie) { Q.Cast(t); } } if (IsValorMode && !E.IsReady()) { var vTarget = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical); if (vTarget != null) { calculateValorDamage(); if (vTarget.Health >= ValorMinDamage && vTarget.Health <= ValorMaxDamage) { R.Cast(); } } } } } }