private Planet FindAndColonizeNextDestination(Position startPos, IList <Planet> planets, ref double remainingTime) { var travelTime = travelTimeInMins * 60; var destination = travelService.FindNearestObject(startPos, planets); if (destination != null) { planets.Remove(destination); remainingTime -= travelTime + destination.Area * pcToColonize * colonizationRateKmPerSec; } return(destination); }