public void LandTransports() { List <Fleet> fleetsToRemove = new List <Fleet>(); foreach (var fleet in FleetManager.GetFleets()) { if (fleet.TransportShips.Count > 0 && (fleet.TravelNodes == null || fleet.TravelNodes.Count == 0) && fleet.AdjacentSystem != null) { if (fleet.AdjacentSystem.Planets[0].Owner == this) { foreach (var transport in fleet.TransportShips) { fleet.AdjacentSystem.Planets[0].AddRacePopulation(transport.raceOnShip, transport.amount); } fleetsToRemove.Add(fleet); } } } foreach (var fleet in fleetsToRemove) { FleetManager.RemoveFleet(fleet); } }