예제 #1
0
        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, 100);
                    }

                    if (Spells[R].IsReady() && !m_target.IsDead && HasMoonlight(m_target))
                    {
                        Spells[R].Cast();
                    }
                    m_moon_start_tick = 0;
                }
            }
        }
예제 #2
0
        //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();
                            }
                        }
                    }
                }
            }
        }