示例#1
0
        private static void ForcusAttack(Obj_AI_Hero target)
        {
            if (Me.IsDashing() || Me.SpellBook.IsCastingSpell || Me.SpellBook.IsAutoAttacking ||
                !Orbwalker.CanMove() || target.IsValidAutoRange() && Orbwalker.CanAttack())
            {
                return;
            }

            if (Q.Ready || Game.TickCount - lastMoveChangedTime < 650 + Game.Ping || Game.TickCount - lastQTime < 650 + Game.Ping)
            {
                return;
            }

            var pos = MyPassiveManager.OrbwalkerPosition(target);
            //var path = Me.GetPath(pos);
            var orbwalkerPos = pos;//path.Length < 3 ? pos : path.Skip(path.Length / 2).FirstOrDefault();

            if (!orbwalkerPos.IsZero)
            {
                OrbwalkerPoint = orbwalkerPos;
                Orbwalker.ForceTarget(target);
                lastMoveChangedTime = Game.TickCount;
            }
            else
            {
                OrbwalkerPoint = Game.CursorPos;
            }
        }
示例#2
0
        private static void ForcusAttack(Obj_AI_Hero target)
        {
            if (Me.IsDashing() || Me.SpellBook.IsCastingSpell || Me.SpellBook.IsAutoAttacking ||
                target.IsValidAutoRange() && Orbwalker.CanAttack())
            {
                return;
            }

            if (Game.TickCount - lastMoveChangedTime < 650 + Game.Ping || Game.TickCount - lastQTime < 650 + Game.Ping)
            {
                return;
            }

            var pos = MyPassiveManager.OrbwalkerPosition(target);

            if (!pos.IsZero)
            {
                OrbwalkerPoint      = Me.ServerPosition.Extend(pos, Me.ServerPosition.Distance(pos) + 150);
                lastMoveChangedTime = Game.TickCount;
            }
            else
            {
                OrbwalkerPoint = Game.CursorPos;
            }
        }
示例#3
0
        internal static float GetComboDamage(Obj_AI_Hero target)
        {
            if (target == null || target.IsDead || !target.IsValidTarget())
            {
                return(0);
            }

            if (target.IsUnKillable())
            {
                return(0);
            }

            var damage = 0d;

            if (MyLogic.IgniteSlot != SpellSlot.Unknown && MyLogic.Ignite.Ready)
            {
                damage += ObjectManager.GetLocalPlayer().GetIgniteDamage(target);
            }

            if (MyLogic.Q.Ready)
            {
                damage += ObjectManager.GetLocalPlayer().GetSpellDamage(target, SpellSlot.Q) +
                          ObjectManager.GetLocalPlayer().GetAutoAttackDamage(target);
            }

            if (MyLogic.W.Ready)
            {
                damage += ObjectManager.GetLocalPlayer().GetSpellDamage(target, SpellSlot.W);
            }

            if (MyLogic.E.Ready)
            {
                damage += ObjectManager.GetLocalPlayer().GetAutoAttackDamage(target) +
                          ObjectManager.GetLocalPlayer().GetAutoAttackDamage(target) * 1.6f;
            }

            if (MyLogic.R.Ready)
            {
                if (target.Type == GameObjectType.obj_AI_Hero)
                {
                    damage += GetPassiveDamage(target, 4) + ObjectManager.GetLocalPlayer().GetAutoAttackDamage(target) * 2.5;
                }
            }

            if (MyPassiveManager.PassiveCount(target) > 0)
            {
                damage += GetPassiveDamage(target, 1) + ObjectManager.GetLocalPlayer().GetAutoAttackDamage(target);
            }

            if (ObjectManager.GetLocalPlayer().HasBuff("SummonerExhaust"))
            {
                damage = damage * 0.6f;
            }

            if (target.UnitSkinName == "Moredkaiser")
            {
                damage -= target.Mana;
            }

            if (target.HasBuff("GarenW"))
            {
                damage = damage * 0.7f;
            }

            if (target.HasBuff("ferocioushowl"))
            {
                damage = damage * 0.7f;
            }

            if (target.HasBuff("BlitzcrankManaBarrierCD") && target.HasBuff("ManaBarrier"))
            {
                damage -= target.Mana / 2f;
            }

            return((float)damage);
        }
示例#4
0
        private static bool CastQ(Obj_AI_Hero target)
        {
            if (!Q.IsReady() || !target.IsValidTarget(Q.Range))
            {
                return(false);
            }

            if (Q.IsReady())
            {
                if (MyPassiveManager.PassiveCount(target) > 0)
                {
                    var pos = MyPassiveManager.CastQPosition(target);

                    if (MiscMenu["FlowersFiora.MiscMenu.UnderTurret"].Enabled)
                    {
                        if (MiscMenu["FlowersFiora.MiscMenu.ComboUnderTurret"].Enabled ||
                            Orbwalker.Mode != OrbwalkingMode.Combo)
                        {
                            if (pos.PointUnderEnemyTurret())
                            {
                                return(false);
                            }
                        }
                    }

                    if (MiscMenu["FlowersFiora.MiscMenu.CheckSafe"].Enabled && !pos.IsSafePosition())
                    {
                        return(false);
                    }

                    if (Me.Distance(pos) > Q.Range)
                    {
                        return(false);
                    }

                    if (Me.Distance(pos) < 50)
                    {
                        return(false);
                    }

                    return(Q.Cast(pos));
                }
                else
                {
                    var pos = target.ServerPosition;

                    if (MiscMenu["FlowersFiora.MiscMenu.UnderTurret"].Enabled)
                    {
                        if (MiscMenu["FlowersFiora.MiscMenu.ComboUnderTurret"].Enabled ||
                            Orbwalker.Mode != OrbwalkingMode.Combo)
                        {
                            if (pos.PointUnderEnemyTurret())
                            {
                                return(false);
                            }
                        }
                    }

                    if (MiscMenu["FlowersFiora.MiscMenu.CheckSafe"].Enabled && !pos.IsSafePosition())
                    {
                        return(false);
                    }

                    if (target.IsValidTarget(Q.Range) && Me.Distance(target) >= 80)
                    {
                        return(Q.Cast(target.ServerPosition));
                    }
                }
            }

            return(false);
        }