Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Multi-tile airports #5

Open
wants to merge 140 commits into
base: master
Choose a base branch
from
Open

Feature: Multi-tile airports #5

wants to merge 140 commits into from

Conversation

J0anJosep
Copy link
Owner

@J0anJosep J0anJosep commented Aug 25, 2021

Description

This PR changes old state machines for airports and aircrafts. Old airports are converted into new customizable airports. It also adds rotated airports by default and two small airport layouts for testing. Default layouts can still be built as before.

Customized airports are enabled with the "Allow customized airports" setting.

OpenGFX+Airports and other Airport related NewGRFs are supported now.

imatge

To-Do list

Finish cleaning aircraft controller code and update and simplify old bits.
Set the flying patterns (on hold, approaching, landing) accordingly.
Set the entry point to each airport to the best point depending on the relative positions of airport and aircraft.

Long term To-Check/To-Do list

  1. IMPORTANT: Aircraft controller. Check it works in all cases.
  2. IMPORTANT: Aircraft entry points and on hold flight.
  3. CHECK: Aircraft flight level.
  4. CHECK: Aircraft speed.
  5. CHECK: On closed airports, keep aircraft on hold. Also for helicopters.
  6. TEST: zeppelin disaster
  7. TEST: regression tests, ia, scripts... (test)
  8. TEST: build airport commands: AT_CUSTOM, noise, costs and maintenance costs...
  9. LOW PRIORITY: License of sprites: Got them from OpenGFX+ Airports. Check how to mention this and license. Occasionally, get adequate sprites.
  10. LOW PRIORITY: Sprites: remove (or reorder) unused. Use AirportTypeInfo for getting sprites to draw. And use overrides from newgrf. At some point, maybe use airportspecs.
  11. LOW PRIORITY: Check savegames using airportsplus and other airport NewGRFs are converted correctly.
  12. LOW PRIORITY: What to do with savegames containing unknown airport designs.
  13. LOW PRIORITY: Decide whether Airport TileArea should be a BitmapTileArea (it will ease dealing with airport noise).
  14. LOW PRIORITY: Rewrite functions involving airport noise and simplify them.
  15. LOW PRIORITY: Revise oil rigs.
  16. LOW PRIORITY: Add support for newgrf airtypes, airporttiles and airport layouts.

@J0anJosep J0anJosep force-pushed the MultitileAirports branch 3 times, most recently from 32d1927 to 606a5f2 Compare August 31, 2021 13:20
@J0anJosep J0anJosep changed the title Multitile airports Multi-tile airports Aug 31, 2021
@J0anJosep J0anJosep force-pushed the MultitileAirports branch 3 times, most recently from 1b01b91 to 5fab8a7 Compare September 3, 2021 16:18
@J0anJosep J0anJosep closed this Sep 3, 2021
@J0anJosep J0anJosep reopened this Sep 3, 2021
@J0anJosep J0anJosep force-pushed the MultitileAirports branch 10 times, most recently from 07e2c3c to 2dcb51c Compare September 8, 2021 19:54
@J0anJosep J0anJosep changed the title Multi-tile airports Teature: Multi-tile airports Sep 8, 2021
@J0anJosep J0anJosep changed the title Teature: Multi-tile airports Feature: Multi-tile airports Sep 8, 2021
@J0anJosep J0anJosep force-pushed the MultitileAirports branch 7 times, most recently from f77cc87 to da33522 Compare September 10, 2021 14:29
@J0anJosep J0anJosep force-pushed the MultitileAirports branch 2 times, most recently from 9f388d1 to 9ae64a9 Compare September 19, 2021 18:59
…port noise and rotation.

# Conflicts:
#	src/newgrf_airport.cpp
#	src/script/api/script_airport.cpp
# Conflicts:
#	src/airport_gui.cpp
…ble.

This cheat has no effect on the new airport internals.
It is kept in the GUI for old savegames where it may have been used.
# Conflicts:
#	src/aircraft_cmd.cpp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant