FluffyManager.ManagerJob_Foraging.GetValidForagingTargetsSorted C# (CSharp) Method

GetValidForagingTargetsSorted() private method

private GetValidForagingTargetsSorted ( ) : List
return List
        private List<Plant> GetValidForagingTargetsSorted()
        {
            IntVec3 position = manager.map.GetBaseCenter();

            return manager.map.listerThings.AllThings
                       .Where( IsValidForagingTarget )

                // OrderBy defaults to ascending, switch sign on current yield to get descending
                       .Select( p => p as Plant )
                       .OrderBy( p => -p.YieldNow() / ( Math.Sqrt( position.DistanceToSquared( p.Position ) ) * 2 ) )
                       .ToList();
        }