private static void doCombo() { var useW = Config.Item("combo_W").GetValue <bool>(); var useE = Config.Item("combo_E").GetValue <bool>(); var useR = Config.Item("combo_R").GetValue <bool>(); var useI = Config.Item("combo_IGN").GetValue <bool>(); var useGB = Config.Item("item_GB").GetValue <bool>(); var useTMT = Config.Item("item_TMT").GetValue <bool>(); var useHYD = Config.Item("item_HYD").GetValue <bool>(); var useSOTD = Config.Item("item_SOTD").GetValue <bool>(); var useRush = Config.Item("combo_RUSH").GetValue <bool>(); var Target = LockedTarget ?? SimpleTs.GetTarget(1500f, SimpleTs.DamageType.Physical); // Ultimate Rush if (UltimateRush(Target) && useRush) { LockedTarget = Target; R.Cast(); } // Items if (TMT.IsReady() && Target.IsValidTarget(TMT.Range) && useTMT) { TMT.Cast(); } if (HYD.IsReady() && Target.IsValidTarget(HYD.Range) && useHYD) { HYD.Cast(); } if (GB.IsReady() && Target.IsValidTarget(LXOrbwalker.GetAutoAttackRange(Player) + (Player.MoveSpeed / 2)) && useGB) { GB.Cast(); } if (SOTD.IsReady() && Target.IsValidTarget(LXOrbwalker.GetAutoAttackRange(Player)) && useSOTD) { SOTD.Cast(); } // Spells if (E.IsReady() && Target.IsValidTarget(E.Range) && useE) { E.CastOnUnit(Target); } else if (W.IsReady() && Target.IsValidTarget(W.Range) && useW) { W.Cast(Target.Position); } else if (R.IsReady() && Target.IsValidTarget(R.Range) && useR && R.GetDamage(Target) > Target.Health) { R.Cast(); } // Auto Ignite if (!useI || Ignite == SpellSlot.Unknown || Player.SummonerSpellbook.CanUseSpell(Ignite) != SpellState.Ready) { return; } foreach (var enemy in ObjectManager.Get <Obj_AI_Hero>().Where(hero => hero.IsEnemy && hero.IsValidTarget(600f) && !hero.IsDead && hero.Health < Player.GetSummonerSpellDamage(hero, Damage.SummonerSpell.Ignite)).OrderByDescending(SimpleTs.GetPriority)) { Player.SummonerSpellbook.CastSpell(Ignite, enemy); return; } }
private static float GetComboDamage(Obj_AI_Base target) { double DamageDealt = 0; var useQ = Config.Item("combo_Q").GetValue <bool>(); var useW = Config.Item("combo_W").GetValue <bool>(); var useE = Config.Item("combo_E").GetValue <bool>(); var useR = Config.Item("combo_R").GetValue <bool>(); var useRUSH = Config.Item("combo_RUSH").GetValue <bool>(); var useTMT = Config.Item("item_TMT").GetValue <bool>(); var useHYD = Config.Item("item_HYD").GetValue <bool>(); var useSOTD = Config.Item("item_SOTD").GetValue <bool>(); // Q if (Q.IsReady() && useQ) { DamageDealt += DamageDealt += Q.GetDamage(target); } // W if (W.IsReady() && useW) { DamageDealt += W.GetDamage(target); } // R if (R.IsReady() && (useR || useRUSH)) { DamageDealt += R.GetDamage(target); } // Double AA + SOTD int SOTDbonus = SOTD.IsReady() && useSOTD ? 2 : 1; DamageDealt += ((Player.GetAutoAttackDamage(target) * 1.1 * (Q.IsReady() ? 2 : 1)) * SOTDbonus); // Tiamat if (TMT.IsReady() && useTMT) { DamageDealt += Player.GetItemDamage(target, Damage.DamageItems.Tiamat); } // Hydra if (HYD.IsReady() && useHYD) { DamageDealt += Player.GetItemDamage(target, Damage.DamageItems.Hydra); } // E damage amplification double[] Amp = { 0, 1.03, 1.06, 1.09, 1.12, 1.15 }; if (E.IsReady() && useE) { DamageDealt += DamageDealt * Amp[E.Level]; } return((float)DamageDealt); }
private static void doCombo() { try { // Menu Config var FeroSpell = Config.Item("FeroSpellC").GetValue <StringList>(); var ForceW = Config.Item("ForceWC").GetValue <Slider>(); var ForceE = Config.Item("ForceEC").GetValue <bool>(); var Target = SimpleTs.GetSelectedTarget() ?? SimpleTs.GetTarget(1600f, SimpleTs.DamageType.Physical); // Force Leap to target if (Player.HasBuff("RengarR", true)) { LXOrbwalker.ForcedTarget = Target; LXOrbwalker.SetAttack(LXOrbwalker.GetPossibleTarget() == Target); } // Use Tiamat / Hydra if (Target.IsValidTarget(TMT.Range)) { if (TMT.IsReady()) { TMT.Cast(); } else if (HYD.IsReady()) { HYD.Cast(); } } // Use Yommus Ghostblade if (YGB.IsReady() && Target.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Player) + (Player.HasBuff("RengarR", true) ? Player.MoveSpeed / 2 : 0))) { YGB.Cast(); } // Cutlass if (BCL.IsReady() && Target.IsValidTarget(BCL.Range)) { BCL.Cast(Target); } // BORK if (BRK.IsReady() && Target.IsValidTarget(BRK.Range)) { BRK.Cast(Target); } // DFG if (W.IsReady() && DFG.IsReady() && Target.IsValidTarget(DFG.Range)) { DFG.Cast(Target); } // Ferocity Spell if (Player.Mana == 5) { if (Player.Health / Player.MaxHealth < ForceW.Value / 100f && Target.IsValidTarget(W.Range)) { W.CastOnUnit(Player, UsePackets); return; } switch (FeroSpell.SelectedIndex) { case 1: if (!Target.IsValidTarget(W.Range)) { return; } W.CastOnUnit(Player, UsePackets); break; case 2: if (!Target.IsValidTarget(E.Range) || Player.HasBuff("RengarR", true)) { return; } E.Cast(Target, UsePackets); break; } return; } // Don't cast W or E while ultimate is active (force leap) if (Player.HasBuff("RengarR", true)) { return; } if (E.IsReady() && Target.IsValidTarget(E.Range) && (!Target.HasBuff("RengarEFinalMAX", true) && !Target.HasBuff("rengareslow") && LastETick + 1500 < Environment.TickCount || ForceE)) { E.Cast(Target, UsePackets); } if (W.IsReady() && Target.IsValidTarget(W.Range)) { W.CastOnUnit(Player, UsePackets); } } catch (Exception e) { Console.WriteLine("Combo Exception: {0}", e); } }
private static void Game_OnGameUpdate(EventArgs args) { if (SKOMenu.Item("activeClear").GetValue <KeyBind>().Active) { Clear(); } var tqtarget = SimpleTs.GetTarget(R.Range, SimpleTs.DamageType.Physical); if (SKOMenu.Item("TripleQ").GetValue <KeyBind>().Active) { TripleQ(tqtarget); } var target = SimpleTs.GetTarget(E.Range, SimpleTs.DamageType.Physical); Q = new Spell(SpellSlot.Q, Player.AttackRange + 90); YMG = new Items.Item(3142, Player.AttackRange + 50); STD = new Items.Item(3131, Player.AttackRange + 50); AutoHeal(); KillSteal(target); if (SKOMenu.Item("activeCombo").GetValue <KeyBind>().Active) { if (target.IsValidTarget()) { if (Player.Mana <= 4) { if (SKOMenu.Item("UseQ").GetValue <bool>() && Q.IsReady() && Player.Distance(target) <= Q.Range) { Q.Cast(); } if (SKOMenu.Item("UseW").GetValue <bool>() && W.IsReady() && Player.Distance(target) <= W.Range) { W.Cast(); } if (SKOMenu.Item("UseE").GetValue <bool>() && E.IsReady() && Player.Distance(target) <= E.Range) { E.Cast(target, PacketCast); } } if (Player.Mana == 5) { if (SKOMenu.Item("UseQ").GetValue <bool>() && SKOMenu.Item("CPrio").GetValue <StringList>().SelectedIndex == 0 && Q.IsReady() && Player.Distance(target) <= Q.Range) { Q.Cast(); } if (SKOMenu.Item("UseW").GetValue <bool>() && SKOMenu.Item("CPrio").GetValue <StringList>().SelectedIndex == 1 && W.IsReady() && Player.Distance(target) <= W.Range) { W.Cast(); } if (SKOMenu.Item("UseE").GetValue <bool>() && SKOMenu.Item("CPrio").GetValue <StringList>().SelectedIndex == 2 && E.IsReady() && Player.Distance(target) <= E.Range) { E.Cast(target); } //E if !Q.IsReady() if (SKOMenu.Item("UseE").GetValue <bool>() && !Q.IsReady() && E.IsReady() && Player.Distance(target) > Q.Range) { E.Cast(target); } } if (SKOMenu.Item("UseItemsCombo").GetValue <bool>()) { if (Player.Distance(target) < Player.AttackRange + 50) { TMT.Cast(); HYD.Cast(); STD.Cast(); } BWC.Cast(target); BRK.Cast(target); RO.Cast(target); YMG.Cast(); } } } if (SKOMenu.Item("activeHarass").GetValue <KeyBind>().Active) { Harass(target); } }