Aka_s_Vayne.Logic.Shine.GetTarget C# (CSharp) Method

GetTarget() public static method

public static GetTarget ( System.Vector3 fromPosition ) : Obj_AI_Base
fromPosition System.Vector3
return Obj_AI_Base
        public static Obj_AI_Base GetTarget(Vector3 fromPosition)
        {
            foreach (var target in EntityManager.Heroes.Enemies.Where(h => h.IsValidTarget(Manager.SpellManager.E.Range)))
            {
                var pushDistance = Manager.MenuManager.CondemnPushDistance;
                var targetPosition = Manager.SpellManager.E2.GetPrediction(target).UnitPosition;
                var pushDirection = (targetPosition - Variables._Player.ServerPosition).Normalized();
                float checkDistance = pushDistance / 40f;
                for (int i = 0; i < 40; i++)
                {
                    Vector3 finalPosition = targetPosition + (pushDirection * checkDistance * i);
                    var collFlags = NavMesh.GetCollisionFlags(finalPosition);
                    var j4Flag = Manager.MenuManager.J4Flag && (Variables.IsJ4Flag(finalPosition, target));
                    if (collFlags.HasFlag(CollisionFlags.Wall) || collFlags.HasFlag(CollisionFlags.Building) || j4Flag) //not sure about building, I think its turrets, nexus etc
                    {
                        if (Manager.MenuManager.OnlyStunCurrentTarget && TargetSelector.GetTarget((int)Variables._Player.GetAutoAttackRange(), DamageType.Physical) != null &&
                                        !target.NetworkId.Equals(TargetSelector.GetTarget((int)Variables._Player.GetAutoAttackRange(), DamageType.Physical).NetworkId))
                        {
                            return null;
                        }

                        if (target.Health + 10 <=
                                        Variables._Player.GetAutoAttackDamage(target) *
                                        Manager.MenuManager.CondemnBlock)
                        {
                            return null;
                        }

                        return target;
                    }
                }
            }

            return null;
        }

Usage Example

示例#1
0
        public static void Spellbook_OnCastSpell(Spellbook sender, SpellbookCastSpellEventArgs args)
        {
            if (sender != null && sender.Owner != null && sender.Owner.IsMe && args.Slot == SpellSlot.E && (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)))
            {
                if (!(args.Target is AIHeroClient))
                {
                    args.Process = false;
                    return;
                }

                if (GetCondemnTarget(Variables._Player.ServerPosition).IsValidTarget())
                {
                    if (!Shine.GetTarget(Variables._Player.ServerPosition).IsValidTarget())
                    {
                        args.Process = false;
                    }
                }
            }
        }
All Usage Examples Of Aka_s_Vayne.Logic.Shine::GetTarget