Auto_Disable.Program.GetRealCastRange C# (CSharp) Method

GetRealCastRange() private static method

private static GetRealCastRange ( Ability ability ) : float
ability Ability
return float
        private static float GetRealCastRange(Ability ability)
        {
            var range = ability.CastRange;
            if (range >= 1) return range;
            var data = ability.AbilitySpecialData.FirstOrDefault(x => x.Name.Contains("radius") || (x.Name.Contains("range") && !x.Name.Contains("ranged")));
            if (data == null) return range;
            var level = ability.Level == 0 ? 0 : ability.Level - 1;
            range = (uint)(data.Count > 1 ? data.GetValue(level) : data.Value);
            return range;
        }