Aka_s_Vayne.Logic.AJSProvider.GetAvgDistance C# (CSharp) Method

GetAvgDistance() static private method

static private GetAvgDistance ( System.Vector3 from ) : float
from System.Vector3
return float
        static float GetAvgDistance(Vector3 from)
        {
            var numberOfEnemies = from.CountEnemiesInRange(1200f);
            if (numberOfEnemies != 0)
            {
                var enemies = EntityManager.Heroes.Enemies.Where(en => en.IsValidTarget(1200f, true, from)
                                                                       &&
                                                                       en.Health >
                                                                       Variables._Player.GetAutoAttackDamage(en) * 3 +
                                                                       Variables._Player.GetSpellDamage(en, SpellSlot.W) +
                                                                       Variables._Player.GetSpellDamage(en, SpellSlot.Q))
                    ;
                var enemiesEx = EntityManager.Heroes.Enemies.Where(en => en.IsValidTarget(1200f, true, from));
                var LHEnemies = enemiesEx.Count() - enemies.Count();

                var totalDistance = (LHEnemies > 1 && enemiesEx.Count() > 2)
                    ? enemiesEx.Sum(en => en.Distance(Variables._Player.ServerPosition))
                    : enemies.Sum(en => en.Distance(Variables._Player.ServerPosition));

                return totalDistance / numberOfEnemies;
            }
            return -1;
        }