Added Gfx wait on LoadMenuEnd(). Otherwise, some levels would not start after loading all required files.
Also, added GPU wait on Menu.c before entering the main loop.
An invalid index inside sound table was being accessed when creating an arrival flight. This made the game crash only under real hardware.
Other minor changes and fixes.
Game.c: parking slots cannot be selected if an aircraft in STATE_PARKED state is on it.
Other fixes and improvements.
Added some tiles from TILESET2.TIM
+ Added first tutorial level.
* Font now inserts line feed automatically if the next word is too long to fit.
* Gfx.c: added primitive list double buffering in order to gain some performance.
* MapEditor: now airport can be defined inside the tool.
* GameGui.c: new function GameGuiCalculateNextAircraftTime(), which calculates remaining time for next aircraft on the list.
* GameStructures.h: new parameter NextAircraftTime for TYPE_PLAYER structures.
* Game.c: added call to new function GameGuiCalculateNextAircraftTime().
* Game.c: GameRenderLevel() renamed to GameRenderTerrain().
* Game.c: GameRenderTerrainPrecalculations() has been created to perform some calculations which are stored in tables to be then looked up by GameRenderTerrain(). This should save us some calculation time during rendering process.
* Camera.c: added new CameraApplyCoordinatesToCartesianPos() prototype.
* GameGui.c: AircraftDataGPoly4 RGB data is now only calculated on startup.
* Game.c: new prototypes GameGetParkingDirection() and GameGetRunwayDirection().
* Slight optimizations into GameRenderLevel().
* Added some comment headers into Gfx.c.
* Aircraft.c: aircraft direction is now set according to runway direction when aircraft is created.
* Game.c: TILE_PARKING_2 was not included on AcceptedTiles[].
* Game.c: GameAssignRunwaytoAircraft() was not looking up runway exit/entry points correctly.