AIsOfCatan.GameController.UpdateLongestRoad C# (CSharp) Method

UpdateLongestRoad() private method

Update the player who has the longest road to be able to determine who has how many points
private UpdateLongestRoad ( ) : void
return void
        private void UpdateLongestRoad()
        {
            var playersLongest = board.GetLongestRoad();
            var newLength = playersLongest.OrderByDescending(p => p.Value).First().Value;
            if (newLength < LongestRoadMinimum) //Don't hand out the card if road is too short
            {
                longestRoadId = -1;
                return;
            }
            var ids = playersLongest.Where(p => p.Value == newLength).Select(p => p.Key);
            var newId = (ids.Count()) > 1 ? -1 : ids.First();
            /*
            if (newLength > longestRoadLength) //Road is longer than previously (can only happen with a valid player ID)
            {
                longestRoadLength = newLength;
                longestRoadId = newId;
            }
            else if (newLength < longestRoadLength && newId != -1) //Previously longest must have been divided but someone has a longest road
            {
                longestRoadLength = newLength;
                longestRoadId = newId;
            }
            else if (newLength < longestRoadLength && newId == -1) //Previously longest must have been divided and others are tied
            {
                longestRoadLength = newLength;
                longestRoadId = -1;
            }
            else if (newLength == longestRoadLength)
            {
                //Do nothing
            }
             * */
            //Reduced to:
            if (newLength == longestRoadLength) return;
            longestRoadLength = newLength;
            longestRoadId = newId;
        }