public void Moon() { if (m_target == null && ComboReady()) { m_target = TargetSelector.GetTarget(2000, TargetSelector.DamageType.Magical); } if (!LXOrbwalkerEnabled) { Orbwalking.Orbwalk(m_target, Game.CursorPos); } else { LXOrbwalker.Orbwalk(Game.CursorPos, m_target); } if (m_target != null) { var minion = MinionManager.GetMinions(Spells[R].Range, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.None).Where(p => p.HasBuff("dianamoonlight")).OrderByDescending(q => q.ServerPosition.Distance(ObjectManager.Player.ServerPosition)).OrderBy(r => r.ServerPosition.Distance(Game.CursorPos)).FirstOrDefault(); if (minion == null) { minion = MinionManager.GetMinions(Spells[Q].Range, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.None).Where(p => p.Health > Spells[Q].GetDamage(p)).OrderByDescending(q => q.ServerPosition.Distance(ObjectManager.Player.ServerPosition)).ThenByDescending(t => t.Health).FirstOrDefault(); if (minion != null && !m_moon_r_casted) { Spells[Q].Cast(minion.ServerPosition); m_moon_start_tick = Environment.TickCount; m_moon_r_casted = false; } } if (minion != null) { if (minion.ServerPosition.Distance(m_target.ServerPosition) < Spells[E].Range - 10 && Environment.TickCount - m_moon_start_tick > 500) { if (Spells[E].IsReady() && !m_moon_r_casted && Spells[R].IsInRange(minion)) //because r->e combo { Spells[R].CastOnUnit(minion); m_moon_r_casted = true; } } } if (m_moon_r_casted) { if (Spells[E].IsReady() && !m_target.IsDead) { Spells[E].Cast(); } if (Spells[W].IsReady() && !m_target.IsDead) { Spells[W].Cast(); } if (Spells[Q].IsReady() && !m_target.IsDead) { Spells[Q].SPredictionCastArc(m_target, HitChance.High, Config.Item("QPREDTYPE").GetValue <StringList>().SelectedIndex == 0, 100); } if (Spells[R].IsReady() && !m_target.IsDead && HasMoonlight(m_target)) { Spells[R].Cast(); } m_moon_start_tick = 0; } } }
public override void CreateConfigMenu() { combo = new Menu("Combo", "Combo"); combo.AddItem(new MenuItem("CUSEQ", "Use Q").SetValue(true)); combo.AddItem(new MenuItem("CUSEW", "Use W").SetValue(true)); combo.AddItem(new MenuItem("CUSEE", "Use E").SetValue(true)); // ult = new Menu("R Settings", "rsettings"); ult.AddItem(new MenuItem("CUSER", "Use R").SetValue(true)); ult.AddItem(new MenuItem("CUSERTOWER", "Dont Use R if Enemy is Under Tower").SetValue(false)); ult.AddItem(new MenuItem("CUSERMETHOD", "R Method").SetValue <StringList>(new StringList(new string[] { "Use Smart R", "Use Only R To Moonlight Debuffed", "Use R Always" }, 0))); // combo.AddSubMenu(ult); harass = new Menu("Harass", "Harass"); harass.AddItem(new MenuItem("HUSEQ", "Use Q").SetValue(true)); harass.AddItem(new MenuItem("HUSEW", "Use W").SetValue(true)); harass.AddItem(new MenuItem("HUSEE", "Use E").SetValue(false)); harass.AddItem(new MenuItem("HUSER", "Use R if Moonlight Debuffed").SetValue(true)); harass.AddItem(new MenuItem("HMANA", "Min. Mana Percent").SetValue(new Slider(50, 100, 0))); laneclear = new Menu("LaneClear/JungleClear", "LaneClear"); laneclear.AddItem(new MenuItem("LUSEQ", "Use Q").SetValue(true)); laneclear.AddItem(new MenuItem("LUSEW", "Use W").SetValue(true)); laneclear.AddItem(new MenuItem("LMINC", "Min. Minions to use Q & W").SetValue <Slider>(new Slider(3, 1, 6))); laneclear.AddItem(new MenuItem("LMANA", "Min. Mana Percent").SetValue(new Slider(50, 100, 0))); misc = new Menu("Misc", "Misc"); misc.AddItem(new MenuItem("QPREDTYPE", "Q Prediction Type").SetValue(new StringList(new[] { "Only Tail Arc", "Tail Arc + Circle" }, 0))); misc.AddItem(new MenuItem("MMISAYA", "Misaya Combo Key").SetValue <KeyBind>(new KeyBind('T', KeyBindType.Press))) .ValueChanged += (s, ar) => { if (!ar.GetNewValue <KeyBind>().Active) { m_target = null; m_misaya_start_tick = 0; } }; misc.AddItem(new MenuItem("MMISAYADR", "Misaya Combo Dont Use 2nd R").SetValue(false)); misc.AddItem(new MenuItem("MMOON", "Moon Combo Key").SetValue(new KeyBind('G', KeyBindType.Press))) .ValueChanged += (s, ar) => { if (!ar.GetNewValue <KeyBind>().Active) { m_target = null; m_moon_start_tick = 0; m_moon_r_casted = false; } }; misc.AddItem(new MenuItem("MFLEE", "Flee Key").SetValue(new KeyBind('A', KeyBindType.Press))); misc.AddItem(new MenuItem("MINTERRUPTE", "Use E For Interrupt").SetValue(true)); misc.AddItem(new MenuItem("MINTERRUPTRE", "Use R->E to Interrupt Important Spells").SetValue(true)); misc.AddItem(new MenuItem("MGAPCLOSEW", "Use W For Gapcloser").SetValue(true)); misc.AddItem(new MenuItem("MLXORBWALKER", "Use LXOrbwalker").SetValue(false)) .ValueChanged += (s, ar) => { if (ar.GetNewValue <bool>()) { Orbwalker.Disable(); OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.Combo] -= Combo; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.Mixed] -= Harass; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.LaneClear] -= LaneClear; OrbwalkingFunctions[(int)LXOrbwalker.Mode.Combo] += Combo; OrbwalkingFunctions[(int)LXOrbwalker.Mode.Harass] += Harass; OrbwalkingFunctions[(int)LXOrbwalker.Mode.LaneClear] += LaneClear; LXOrbwalker.Enable(); } else { LXOrbwalker.Disable(); OrbwalkingFunctions[(int)LXOrbwalker.Mode.Combo] -= Combo; OrbwalkingFunctions[(int)LXOrbwalker.Mode.Harass] -= Harass; OrbwalkingFunctions[(int)LXOrbwalker.Mode.LaneClear] -= LaneClear; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.Combo] += Combo; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.Mixed] += Harass; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.LaneClear] += LaneClear; Orbwalker.Enable(); } }; misc.AddItem(new MenuItem("MKILLABLEDRAW", "Disable Notifier Drawings").SetValue(false)); LXOrbwalker.AddToMenu(misc.SubMenu("LXOrbwalker Settings")); Config.AddSubMenu(combo); Config.AddSubMenu(harass); Config.AddSubMenu(laneclear); Config.AddSubMenu(misc); Config.AddToMainMenu(); BeforeOrbWalking += BeforeOrbwalk; BeforeDrawing += BeforeDraw; if (!LXOrbwalkerEnabled) { OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.Combo] += Combo; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.Mixed] += Harass; OrbwalkingFunctions[(int)Orbwalking.OrbwalkingMode.LaneClear] += LaneClear; } else { OrbwalkingFunctions[(int)LXOrbwalker.Mode.Combo] += Combo; OrbwalkingFunctions[(int)LXOrbwalker.Mode.Harass] += Harass; OrbwalkingFunctions[(int)LXOrbwalker.Mode.LaneClear] += LaneClear; LXOrbwalker.Enable(); } }
//r q w r e public void Misaya() { if (m_target == null && Spells[Q].IsReady() && Spells[R].IsReady()) { m_target = TargetSelector.GetTarget(1500, TargetSelector.DamageType.Magical); } if (!LXOrbwalkerEnabled) { Orbwalking.Orbwalk(m_target, Game.CursorPos); } else { LXOrbwalker.Orbwalk(Game.CursorPos, m_target); } if (m_target != null) { if (m_target.ServerPosition.Distance(ObjectManager.Player.ServerPosition) <= 810f) { if (m_misaya_start_tick == 0) //begin combo { m_misaya_start_tick = Environment.TickCount; Spells[R].CastOnUnit(m_target); } } if (m_misaya_start_tick != 0) { Spells[Q].Cast(m_target.ServerPosition); if (!m_target.IsDead && Spells[W].IsInRange(m_target)) { Spells[W].Cast(); } if (!Config.Item("MMISAYADR").GetValue <bool>()) { if (!m_target.IsDead) { Spells[R].CastOnUnit(m_target); } if (!m_target.IsDead && Spells[E].IsInRange(m_target)) { Spells[E].Cast(); } } else { if (HasMoonlight(m_target)) { if (!m_target.IsDead) { Spells[R].CastOnUnit(m_target); } if (!m_target.IsDead && Spells[E].IsInRange(m_target)) { Spells[E].Cast(); } } } } } }