* fix conflict
* squash bugs and reuse patrol layout
* fix tanker tacan and formatting
* fix unlimited fuel option
* update pretense for tanker changes
* reuse refueling flight plan and bugfix for sunken carrier
changelog
* remove unitmap dependency
* formatting and more unit map removal
* more formatting
* typing and black
* keep tanker out of clouds
* fix if there are no clouds
* better cloud handling
* groundwork for recovery task
* remove changes to game/commander
* Finishing up recovery tankers
---------
Co-authored-by: Raffson <Raffson@users.noreply.github.com>
Flights without a meaningful TOT make the code around startup time (and
other scheduling behaviors) unnecessarily complicated because they have
to handle unpredictable flight plans. We can simplify this by requiring
that all flight plans have a waypoint associated with their TOT. For
custom flight plans, we can just fall back to the takeoff waypoint. For
RTB flight plans (which are only synthetic flight plans injected for
aborted flights), we can use the abort point.
This also means that all flight plans now have, at the very least, a
departure waypoint. Deleting this waypoint is invalid even for custom
flights, so that's no a problem.
During package planning we don't care about the details of the flight
plan, just the layout (to check if the layout is threatened and we need
escorts). Splitting these will allow us to reduce the amount of work
that must be done in each loop of the planning phase, potentially
caching attempted flight plans between loops.
Split the oversized file into one per plan type. This also moves the
layout responsibility out of the oversized FlightPlanBuilder and into
each flight plan type file.