public FlightPlan Clone()
{
var result = new FlightPlan();
result.name = String.Copy(name);
result.description = String.Copy(description);
result.planet = planet;
WayPoint prev_wp = null;
foreach (var wp in course)
{
var new_wp = wp.Clone();
if (prev_wp != null)
prev_wp.next = new_wp;
result.course.Add(new_wp);
prev_wp = new_wp;
}
Deb.Log("FlightPlan.Clone: update waypoint values for resulting course.");
result.UpdateWayPointValues(planet);
return result;
}