12 #ifndef AIRPORT_MOVEMENT_H 
   13 #define AIRPORT_MOVEMENT_H 
   37 #define AMD(x, y, flags, dir) { x, y, flags, {dir} } 
  409 static const byte _airport_entries_dummy[] = {0, 1, 2, 3};
 
  421 static const byte _airport_terminal_country[] = {1, 2};
 
  422 static const byte _airport_entries_country[] = {16, 15, 18, 17};
 
  424   {  0, 
HANGAR, NOTHING_block, 1 },
 
  425   {  1, 255, AIRPORT_BUSY_block, 0 }, { 1, 
HANGAR, 0, 0 }, { 1, 
TERM1, 
TERM1_block, 2 }, { 1, 
TERM2, 0, 4 }, { 1, 
HELITAKEOFF, 0, 19 }, { 1, 0, 0, 6 },
 
  428   {  4, 255, AIRPORT_BUSY_block, 0 }, { 4, 
TERM2, 0, 5 }, { 4, 
HANGAR, 0, 1 }, { 4, 
TAKEOFF, 0, 6 }, { 4, 
HELITAKEOFF, 0, 1 },
 
  429   {  5, 255, AIRPORT_BUSY_block, 0 }, { 5, 
TERM2, 
TERM2_block, 3 }, { 5, 0, 0, 4 },
 
  430   {  6, 0, AIRPORT_BUSY_block, 7 },
 
  432   {  7, 
TAKEOFF, AIRPORT_BUSY_block, 8 },
 
  436   { 10, 
FLYING, NOTHING_block, 15 }, { 10, 
LANDING, 0, 11 }, { 10, 
HELILANDING, 0, 20 },
 
  437   { 11, 
LANDING, AIRPORT_BUSY_block, 12 },
 
  438   { 12, 0, AIRPORT_BUSY_block, 13 },
 
  439   { 13, 
ENDLANDING, AIRPORT_BUSY_block, 14 }, { 13, 
TERM2, 0, 5 }, { 13, 0, 0, 14 },
 
  440   { 14, 0, AIRPORT_BUSY_block, 1 },
 
  442   { 15, 0, NOTHING_block, 16 },
 
  443   { 16, 0, NOTHING_block, 17 },
 
  444   { 17, 0, NOTHING_block, 18 },
 
  445   { 18, 0, NOTHING_block, 10 },
 
  453 static const byte _airport_terminal_commuter[] = { 1, 3 };
 
  454 static const byte _airport_entries_commuter[] = {22, 21, 24, 23};
 
  456   {  0, 
HANGAR, NOTHING_block, 1 }, { 0, 
HELITAKEOFF, 
HELIPAD2_block, 1 }, { 0, 0, 0, 1 },
 
  457   {  1, 255, TAXIWAY_BUSY_block, 0 }, { 1, 
HANGAR, 0, 0 }, { 1, 
TAKEOFF, 0, 11 }, { 1, 
TERM1, TAXIWAY_BUSY_block, 10 }, { 1, 
TERM2, TAXIWAY_BUSY_block, 10 }, { 1, 
TERM3, TAXIWAY_BUSY_block, 10 }, { 1, 
HELIPAD1, TAXIWAY_BUSY_block, 10 }, { 1, 
HELIPAD2, TAXIWAY_BUSY_block, 10 }, { 1, 
HELITAKEOFF, TAXIWAY_BUSY_block, 10 }, { 1, 0, 0, 0 },
 
  458   {  2, 255, AIRPORT_ENTRANCE_block, 2 }, { 2, 
HANGAR, 0, 8 }, { 2, 
TERM1, 0, 8 }, { 2, 
TERM2, 0, 8 }, { 2, 
TERM3, 0, 8 }, { 2, 
HELIPAD1, 0, 8 }, { 2, 
HELIPAD2, 0, 8 }, { 2, 
HELITAKEOFF, 0, 8 }, { 2, 0, 0, 2 },
 
  459   {  3, 
TERM1, 
TERM1_block, 8 }, { 3, 
HANGAR, 0, 8 }, { 3, 
TAKEOFF, 0, 8 }, { 3, 0, 0, 3 },
 
  460   {  4, 
TERM2, 
TERM2_block, 9 }, { 4, 
HANGAR, 0, 9 }, { 4, 
TAKEOFF, 0, 9 }, { 4, 0, 0, 4 },
 
  461   {  5, 
TERM3, 
TERM3_block, 10 }, { 5, 
HANGAR, 0, 10 }, { 5, 
TAKEOFF, 0, 10 }, { 5, 0, 0, 5 },
 
  462   {  6, 
HELIPAD1, 
HELIPAD1_block, 6 }, { 6, 
HANGAR, TAXIWAY_BUSY_block, 9 }, { 6, 
HELITAKEOFF, 0, 35 },
 
  463   {  7, 
HELIPAD2, 
HELIPAD2_block, 7 }, { 7, 
HANGAR, TAXIWAY_BUSY_block, 10 }, { 7, 
HELITAKEOFF, 0, 36 },
 
  464   {  8, 255, TAXIWAY_BUSY_block, 8 }, { 8, 
TAKEOFF, TAXIWAY_BUSY_block, 9 }, { 8, 
HANGAR, TAXIWAY_BUSY_block, 9 }, { 8, 
TERM1, 
TERM1_block, 3 }, { 8, 0, TAXIWAY_BUSY_block, 9 },
 
  465   {  9, 255, TAXIWAY_BUSY_block, 9 }, { 9, 
TAKEOFF, TAXIWAY_BUSY_block, 10 }, { 9, 
HANGAR, TAXIWAY_BUSY_block, 10 }, { 9, 
TERM2, 
TERM2_block, 4 }, { 9, 
HELIPAD1, 
HELIPAD1_block, 6 }, { 9, 
HELITAKEOFF, 
HELIPAD1_block, 6 }, { 9, 
TERM1, TAXIWAY_BUSY_block, 8 }, { 9, 0, TAXIWAY_BUSY_block, 10 },
 
  466   { 10, 255, TAXIWAY_BUSY_block, 10 }, { 10, 
TERM3, 
TERM3_block, 5 }, { 10, 
HELIPAD1, 0, 9 }, { 10, 
HELIPAD2, 
HELIPAD2_block, 7 }, { 10, 
HELITAKEOFF, 
HELIPAD2_block, 7 }, { 10, 
TAKEOFF, TAXIWAY_BUSY_block, 1 }, { 10, 
HANGAR, TAXIWAY_BUSY_block, 1 }, { 10, 0, TAXIWAY_BUSY_block, 9 },
 
  467   { 11, 0, OUT_WAY_block, 12 },
 
  469   { 12, 
TAKEOFF, RUNWAY_IN_OUT_block, 13 },
 
  470   { 13, 0, RUNWAY_IN_OUT_block, 14 },
 
  474   { 16, 
FLYING, NOTHING_block, 21 }, { 16, 
LANDING, IN_WAY_block, 17 }, { 16, 
HELILANDING, 0, 25 },
 
  475   { 17, 
LANDING, RUNWAY_IN_OUT_block, 18 },
 
  476   { 18, 0, RUNWAY_IN_OUT_block, 19 },
 
  477   { 19, 0, RUNWAY_IN_OUT_block, 20 },
 
  480   { 21, 0, NOTHING_block, 22 },
 
  481   { 22, 0, NOTHING_block, 23 },
 
  482   { 23, 0, NOTHING_block, 24 },
 
  483   { 24, 0, NOTHING_block, 16 },
 
  486   { 26, 
HELIENDLANDING, PRE_HELIPAD_block, 26 }, { 26, 
HELIPAD1, 0, 27 }, { 26, 
HELIPAD2, 0, 28 }, { 26, 
HANGAR, 0, 33 },
 
  487   { 27, 0, NOTHING_block, 29 }, 
 
  488   { 28, 0, NOTHING_block, 30 },
 
  495   { 33, 0, TAXIWAY_BUSY_block, 34 }, 
 
  496   { 34, 0, TAXIWAY_BUSY_block, 1 },
 
  503 static const byte _airport_terminal_city[] = { 1, 3 };
 
  504 static const byte _airport_entries_city[] = {26, 29, 27, 28};
 
  506   {  0, 
HANGAR, NOTHING_block, 1 }, { 0, 
TAKEOFF, OUT_WAY_block, 1 }, { 0, 0, 0, 1 },
 
  507   {  1, 255, TAXIWAY_BUSY_block, 0 }, { 1, 
HANGAR, 0, 0 }, { 1, 
TERM2, 0, 6 }, { 1, 
TERM3, 0, 6 }, { 1, 0, 0, 7 }, 
 
  508   {  2, 
TERM1, 
TERM1_block, 7 }, { 2, 
TAKEOFF, OUT_WAY_block, 7 }, { 2, 0, 0, 7 },
 
  509   {  3, 
TERM2, 
TERM2_block, 5 }, { 3, 
TAKEOFF, OUT_WAY_block, 6 }, { 3, 0, 0, 6 },
 
  510   {  4, 
TERM3, 
TERM3_block, 5 }, { 4, 
TAKEOFF, OUT_WAY_block, 5 }, { 4, 0, 0, 5 },
 
  511   {  5, 255, TAXIWAY_BUSY_block, 0 }, { 5, 
TERM2, 
TERM2_block, 3 }, { 5, 
TERM3, 
TERM3_block, 4 }, { 5, 0, 0, 6 },
 
  512   {  6, 255, TAXIWAY_BUSY_block, 0 }, { 6, 
TERM2, 
TERM2_block, 3 }, { 6, 
TERM3, 0, 5 }, { 6, 
HANGAR, 0, 1 }, { 6, 0, 0, 7 },
 
  513   {  7, 255, TAXIWAY_BUSY_block, 0 }, { 7, 
TERM1, 
TERM1_block, 2 }, { 7, 
TAKEOFF, OUT_WAY_block, 8 }, { 7, 
HELITAKEOFF, 0, 22 }, { 7, 
HANGAR, 0, 1 }, { 7, 0, 0, 6 },
 
  514   {  8, 0, OUT_WAY_block, 9 },
 
  515   {  9, 0, RUNWAY_IN_OUT_block, 10 },
 
  517   { 10, 
TAKEOFF, RUNWAY_IN_OUT_block, 11 },
 
  521   { 13, 
FLYING, NOTHING_block, 18 }, { 13, 
LANDING, 0, 14 }, { 13, 
HELILANDING, 0, 23 },
 
  522   { 14, 
LANDING, RUNWAY_IN_OUT_block, 15 },
 
  523   { 15, 0, RUNWAY_IN_OUT_block, 17 },
 
  524   { 16, 0, RUNWAY_IN_OUT_block, 17 }, 
 
  527   { 18, 0, NOTHING_block, 25 },
 
  528   { 19, 0, NOTHING_block, 20 },
 
  529   { 20, 0, NOTHING_block, 21 },
 
  530   { 21, 0, NOTHING_block, 13 },
 
  535   { 25, 0, NOTHING_block, 20},
 
  536   { 26, 0, NOTHING_block, 19},
 
  537   { 27, 0, NOTHING_block, 28},
 
  538   { 28, 0, NOTHING_block, 19},
 
  539   { 29, 0, NOTHING_block, 26},
 
  544 static const byte _airport_terminal_metropolitan[] = { 1, 3 };
 
  545 static const byte _airport_entries_metropolitan[] = {20, 19, 22, 21};
 
  547   {  0, 
HANGAR, NOTHING_block, 1 },
 
  548   {  1, 255, TAXIWAY_BUSY_block, 0 }, { 1, 
HANGAR, 0, 0 }, { 1, 
TERM2, 0, 6 }, { 1, 
TERM3, 0, 6 }, { 1, 0, 0, 7 }, 
 
  552   {  5, 255, TAXIWAY_BUSY_block, 0 }, { 5, 
TERM2, 
TERM2_block, 3 }, { 5, 
TERM3, 
TERM3_block, 4 }, { 5, 0, 0, 6 },
 
  553   {  6, 255, TAXIWAY_BUSY_block, 0 }, { 6, 
TERM2, 
TERM2_block, 3 }, { 6, 
TERM3, 0, 5 }, { 6, 
HANGAR, 0, 1 }, { 6, 0, 0, 7 },
 
  554   {  7, 255, TAXIWAY_BUSY_block, 0 }, { 7, 
TERM1, 
TERM1_block, 2 }, { 7, 
TAKEOFF, 0, 8 }, { 7, 
HELITAKEOFF, 0, 23 }, { 7, 
HANGAR, 0, 1 }, { 7, 0, 0, 6 },
 
  555   {  8, 0, OUT_WAY_block, 9 },
 
  556   {  9, 0, RUNWAY_OUT_block, 10 },
 
  558   { 10, 
TAKEOFF, RUNWAY_OUT_block, 11 },
 
  562   { 13, 
FLYING, NOTHING_block, 19 }, { 13, 
LANDING, 0, 14 }, { 13, 
HELILANDING, 0, 25 },
 
  563   { 14, 
LANDING, RUNWAY_IN_block, 15 },
 
  564   { 15, 0, RUNWAY_IN_block, 16 },
 
  565   { 16, 255, RUNWAY_IN_block, 0 }, { 16, 
ENDLANDING, IN_WAY_block, 17 },
 
  566   { 17, 255, RUNWAY_OUT_block, 0 }, { 17, 
ENDLANDING, IN_WAY_block, 18 },
 
  569   { 19, 0, NOTHING_block, 20 },
 
  570   { 20, 0, NOTHING_block, 21 },
 
  571   { 21, 0, NOTHING_block, 22 },
 
  572   { 22, 0, NOTHING_block, 13 },
 
  574   { 23, 0, NOTHING_block, 24 },
 
  578   { 27, 255, TAXIWAY_BUSY_block, 27 }, { 27, 
TERM1, 
TERM1_block, 2 }, { 27, 0, 0, 7 },
 
  583 static const byte _airport_terminal_international[] = { 2, 3, 3 };
 
  584 static const byte _airport_entries_international[] = { 38, 37, 40, 39 };
 
  586   {  0, 
HANGAR, NOTHING_block, 2 }, { 0, 255, TERM_GROUP1_block, 0 }, { 0, 255, TERM_GROUP2_ENTER1_block, 1 }, { 0, 
HELITAKEOFF, 
HELIPAD1_block, 2 }, { 0, 0, 0, 2 },
 
  587   {  1, 
HANGAR, NOTHING_block, 3 }, { 1, 255, HANGAR2_AREA_block, 1 }, { 1, 
HELITAKEOFF, 
HELIPAD2_block, 3 }, { 1, 0, 0, 3 },
 
  588   {  2, 255, AIRPORT_ENTRANCE_block, 0 }, { 2, 
HANGAR, 0, 0 }, { 2, 
TERM4, 0, 12 }, { 2, 
TERM5, 0, 12 }, { 2, 
TERM6, 0, 12 }, { 2, 
HELIPAD1, 0, 12 }, { 2, 
HELIPAD2, 0, 12 }, { 2, 
HELITAKEOFF, 0, 12 }, { 2, 0, 0, 23 },
 
  589   {  3, 255, HANGAR2_AREA_block, 0 }, { 3, 
HANGAR, 0, 1 }, { 3, 0, 0, 18 },
 
  590   {  4, 
TERM1, 
TERM1_block, 23 }, { 4, 
HANGAR, AIRPORT_ENTRANCE_block, 23 }, { 4, 0, 0, 23 },
 
  591   {  5, 
TERM2, 
TERM2_block, 24 }, { 5, 
HANGAR, AIRPORT_ENTRANCE_block, 24 }, { 5, 0, 0, 24 },
 
  592   {  6, 
TERM3, 
TERM3_block, 25 }, { 6, 
HANGAR, AIRPORT_ENTRANCE_block, 25 }, { 6, 0, 0, 25 },
 
  593   {  7, 
TERM4, 
TERM4_block, 16 }, { 7, 
HANGAR, HANGAR2_AREA_block, 16 }, { 7, 0, 0, 16 },
 
  594   {  8, 
TERM5, 
TERM5_block, 17 }, { 8, 
HANGAR, HANGAR2_AREA_block, 17 }, { 8, 0, 0, 17 },
 
  595   {  9, 
TERM6, 
TERM6_block, 18 }, { 9, 
HANGAR, HANGAR2_AREA_block, 18 }, { 9, 0, 0, 18 },
 
  596   { 10, 
HELIPAD1, 
HELIPAD1_block, 10 }, { 10, 
HANGAR, HANGAR2_AREA_block, 16 }, { 10, 
HELITAKEOFF, 0, 47 },
 
  597   { 11, 
HELIPAD2, 
HELIPAD2_block, 11 }, { 11, 
HANGAR, HANGAR2_AREA_block, 17 }, { 11, 
HELITAKEOFF, 0, 48 },
 
  598   { 12, 0, TERM_GROUP2_ENTER1_block, 13 },
 
  599   { 13, 0, TERM_GROUP2_ENTER1_block, 14 },
 
  600   { 14, 0, TERM_GROUP2_ENTER2_block, 15 },
 
  601   { 15, 0, TERM_GROUP2_ENTER2_block, 16 },
 
  602   { 16, 255, TERM_GROUP2_block, 0 }, { 16, 
TERM4, 
TERM4_block, 7 }, { 16, 
HELIPAD1, 
HELIPAD1_block, 10 }, { 16, 
HELITAKEOFF, 
HELIPAD1_block, 10 }, { 16, 0, 0, 17 },
 
  603   { 17, 255, TERM_GROUP2_block, 0 }, { 17, 
TERM5, 
TERM5_block, 8 }, { 17, 
TERM4, 0, 16 }, { 17, 
HELIPAD1, 0, 16 }, { 17, 
HELIPAD2, 
HELIPAD2_block, 11 }, { 17, 
HELITAKEOFF, 
HELIPAD2_block, 11 }, { 17, 0, 0, 18 },
 
  604   { 18, 255, TERM_GROUP2_block, 0 }, { 18, 
TERM6, 
TERM6_block, 9 }, { 18, 
TAKEOFF, 0, 19 }, { 18, 
HANGAR, HANGAR2_AREA_block, 3 }, { 18, 0, 0, 17 },
 
  605   { 19, 0, TERM_GROUP2_EXIT1_block, 20 },
 
  606   { 20, 0, TERM_GROUP2_EXIT1_block, 21 },
 
  607   { 21, 0, TERM_GROUP2_EXIT2_block, 22 },
 
  608   { 22, 0, TERM_GROUP2_EXIT2_block, 26 },
 
  609   { 23, 255, TERM_GROUP1_block, 0 }, { 23, 
TERM1, 
TERM1_block, 4 }, { 23, 
HANGAR, AIRPORT_ENTRANCE_block, 2 }, { 23, 0, 0, 24 },
 
  610   { 24, 255, TERM_GROUP1_block, 0 }, { 24, 
TERM2, 
TERM2_block, 5 }, { 24, 
TERM1, 0, 23 }, { 24, 
HANGAR, 0, 23 }, { 24, 0, 0, 25 },
 
  611   { 25, 255, TERM_GROUP1_block, 0 }, { 25, 
TERM3, 
TERM3_block, 6 }, { 25, 
TAKEOFF, 0, 26 }, { 25, 0, 0, 24 },
 
  612   { 26, 255, TAXIWAY_BUSY_block, 0 }, { 26, 
TAKEOFF, 0, 27 }, { 26, 0, 0, 25 },
 
  613   { 27, 0, OUT_WAY_block, 28 },
 
  615   { 28, 
TAKEOFF, OUT_WAY_block, 29 },
 
  616   { 29, 0, RUNWAY_OUT_block, 30 },
 
  620   { 32, 
FLYING, NOTHING_block, 37 }, { 32, 
LANDING, 0, 33 }, { 32, 
HELILANDING, 0, 41 },
 
  621   { 33, 
LANDING, RUNWAY_IN_block, 34 },
 
  622   { 34, 0, RUNWAY_IN_block, 35 },
 
  623   { 35, 0, RUNWAY_IN_block, 36 },
 
  624   { 36, 
ENDLANDING, IN_WAY_block, 36 }, { 36, 255, TERM_GROUP1_block, 0 }, { 36, 255, TERM_GROUP2_ENTER1_block, 1 }, { 36, 
TERM4, 0, 12 }, { 36, 
TERM5, 0, 12 }, { 36, 
TERM6, 0, 12 }, { 36, 0, 0, 2 },
 
  626   { 37, 0, NOTHING_block, 38 },
 
  627   { 38, 0, NOTHING_block, 39 },
 
  628   { 39, 0, NOTHING_block, 40 },
 
  629   { 40, 0, NOTHING_block, 32 },
 
  632   { 42, 
HELIENDLANDING, PRE_HELIPAD_block, 42 }, { 42, 
HELIPAD1, 0, 43 }, { 42, 
HELIPAD2, 0, 44 }, { 42, 
HANGAR, 0, 49 },
 
  633   { 43, 0, NOTHING_block, 45 },
 
  634   { 44, 0, NOTHING_block, 46 },
 
  641   { 49, 0, HANGAR2_AREA_block, 50 }, 
 
  642   { 50, 0, HANGAR2_AREA_block, 3 },
 
  648 static const byte _airport_terminal_intercontinental[] = { 2, 4, 4 };
 
  649 static const byte _airport_entries_intercontinental[] = { 44, 43, 46, 45 };
 
  651   {  0, 
HANGAR, NOTHING_block, 2 }, { 0, 255, HANGAR1_AREA_block | TERM_GROUP1_block, 0 }, { 0, 255, HANGAR1_AREA_block | TERM_GROUP1_block, 1 }, { 0, 
TAKEOFF, HANGAR1_AREA_block | TERM_GROUP1_block, 2 }, { 0, 0, 0, 2 },
 
  652   {  1, 
HANGAR, NOTHING_block, 3 }, { 1, 255, HANGAR2_AREA_block, 1 }, { 1, 255, HANGAR2_AREA_block, 0 }, { 1, 0, 0, 3 },
 
  653   {  2, 255, HANGAR1_AREA_block, 0 }, { 2, 255, TERM_GROUP1_block, 0 }, { 2, 255, TERM_GROUP1_block, 1 }, { 2, 
HANGAR, 0, 0 }, { 2, 
TAKEOFF, TERM_GROUP1_block, 27 }, { 2, 
TERM5, 0, 26 }, { 2, 
TERM6, 0, 26 }, { 2, 
TERM7, 0, 26 }, { 2, 
TERM8, 0, 26 }, { 2, 
HELIPAD1, 0, 26 }, { 2, 
HELIPAD2, 0, 26 }, { 2, 
HELITAKEOFF, 0, 74 }, { 2, 0, 0, 27 },
 
  654   {  3, 255, HANGAR2_AREA_block, 0 }, { 3, 
HANGAR, 0, 1 }, { 3, 
HELITAKEOFF, 0, 75 }, {3, 
TAKEOFF, 0, 59}, { 3, 0, 0, 20 },
 
  655   {  4, 
TERM1, 
TERM1_block, 26 }, { 4, 
HANGAR, HANGAR1_AREA_block | TERM_GROUP1_block, 26 }, { 4, 0, 0, 26 },
 
  656   {  5, 
TERM2, 
TERM2_block, 27 }, { 5, 
HANGAR, HANGAR1_AREA_block | TERM_GROUP1_block, 27 }, { 5, 0, 0, 27 },
 
  657   {  6, 
TERM3, 
TERM3_block, 28 }, { 6, 
HANGAR, HANGAR1_AREA_block | TERM_GROUP1_block, 28 }, { 6, 0, 0, 28 },
 
  658   {  7, 
TERM4, 
TERM4_block, 29 }, { 7, 
HANGAR, HANGAR1_AREA_block | TERM_GROUP1_block, 29 }, { 7, 0, 0, 29 },
 
  659   {  8, 
TERM5, 
TERM5_block, 18 }, { 8, 
HANGAR, HANGAR2_AREA_block, 18 }, { 8, 0, 0, 18 },
 
  660   {  9, 
TERM6, 
TERM6_block, 19 }, { 9, 
HANGAR, HANGAR2_AREA_block, 19 }, { 9, 0, 0, 19 },
 
  661   { 10, 
TERM7, 
TERM7_block, 20 }, { 10, 
HANGAR, HANGAR2_AREA_block, 20 }, { 10, 0, 0, 20 },
 
  662   { 11, 
TERM8, 
TERM8_block, 21 }, { 11, 
HANGAR, HANGAR2_AREA_block, 21 }, { 11, 0, 0, 21 },
 
  663   { 12, 
HELIPAD1, 
HELIPAD1_block, 12 }, { 12, 
HANGAR, 0, 70 }, { 12, 
HELITAKEOFF, 0, 72 },
 
  664   { 13, 
HELIPAD2, 
HELIPAD2_block, 13 }, { 13, 
HANGAR, 0, 71 }, { 13, 
HELITAKEOFF, 0, 73 },
 
  665   { 14, 0, TERM_GROUP2_ENTER1_block, 15 },
 
  666   { 15, 0, TERM_GROUP2_ENTER1_block, 16 },
 
  667   { 16, 0, TERM_GROUP2_ENTER2_block, 17 },
 
  668   { 17, 0, TERM_GROUP2_ENTER2_block, 18 },
 
  669   { 18, 255, TERM_GROUP2_block, 0 }, { 18, 
TERM5, 
TERM5_block, 8 }, { 18, 
TAKEOFF, 0, 19 }, { 18, 
HELITAKEOFF, 
HELIPAD1_block, 19 }, { 18, 0, TERM_GROUP2_EXIT1_block, 19 },
 
  670   { 19, 255, TERM_GROUP2_block, 0 }, { 19, 
TERM6, 
TERM6_block, 9 }, { 19, 
TERM5, 0, 18 }, { 19, 
TAKEOFF, 0, 57 }, { 19, 
HELITAKEOFF, 
HELIPAD1_block, 20 }, { 19, 0, TERM_GROUP2_EXIT1_block, 20 }, 
 
  671   { 20, 255, TERM_GROUP2_block, 0 }, { 20, 
TERM7, 
TERM7_block, 10 }, { 20, 
TERM5, 0, 19 }, { 20, 
TERM6, 0, 19 }, { 20, 
HANGAR, HANGAR2_AREA_block, 3 }, { 20, 
TAKEOFF, 0, 19 }, { 20, 0, TERM_GROUP2_EXIT1_block, 21 },
 
  672   { 21, 255, TERM_GROUP2_block, 0 }, { 21, 
TERM8, 
TERM8_block, 11 }, { 21, 
HANGAR, HANGAR2_AREA_block, 20 }, { 21, 
TERM5, 0, 20 }, { 21, 
TERM6, 0, 20 }, { 21, 
TERM7, 0, 20 }, { 21, 
TAKEOFF, 0, 20 }, { 21, 0, TERM_GROUP2_EXIT1_block, 22 },
 
  673   { 22, 255, TERM_GROUP2_block, 0 }, { 22, 
HANGAR, 0, 21 }, { 22, 
TERM5, 0, 21 }, { 22, 
TERM6, 0, 21 }, { 22, 
TERM7, 0, 21 }, { 22, 
TERM8, 0, 21 }, { 22, 
TAKEOFF, 0, 21 }, { 22, 0, 0, 23 },
 
  674   { 23, 0, TERM_GROUP2_EXIT1_block, 70 },
 
  675   { 24, 0, TERM_GROUP2_EXIT2_block, 25 },
 
  676   { 25, 255, TERM_GROUP2_EXIT2_block, 0 }, { 25, 
HANGAR, HANGAR1_AREA_block | TERM_GROUP1_block, 29 }, { 25, 0, 0, 29 },
 
  677   { 26, 255, TERM_GROUP1_block, 0 }, { 26, 
TERM1, 
TERM1_block, 4 }, { 26, 
HANGAR, HANGAR1_AREA_block, 27 }, { 26, 
TERM5, TERM_GROUP2_ENTER1_block, 14 }, { 26, 
TERM6, TERM_GROUP2_ENTER1_block, 14 }, { 26, 
TERM7, TERM_GROUP2_ENTER1_block, 14 }, { 26, 
TERM8, TERM_GROUP2_ENTER1_block, 14 }, { 26, 
HELIPAD1, TERM_GROUP2_ENTER1_block, 14 }, { 26, 
HELIPAD2, TERM_GROUP2_ENTER1_block, 14 }, { 26, 
HELITAKEOFF, TERM_GROUP2_ENTER1_block, 14 }, { 26, 0, 0, 27 },
 
  678   { 27, 255, TERM_GROUP1_block, 0 }, { 27, 
TERM2, 
TERM2_block, 5 }, { 27, 
HANGAR, HANGAR1_AREA_block, 2 }, { 27, 
TERM1, 0, 26 }, { 27, 
TERM5, 0, 26 }, { 27, 
TERM6, 0, 26 }, { 27, 
TERM7, 0, 26 }, { 27, 
TERM8, 0, 26 }, { 27, 
HELIPAD1, 0, 14 }, { 27, 
HELIPAD2, 0, 14 }, { 27, 0, 0, 28 },
 
  679   { 28, 255, TERM_GROUP1_block, 0 }, { 28, 
TERM3, 
TERM3_block, 6 }, { 28, 
HANGAR, HANGAR1_AREA_block, 27 }, { 28, 
TERM1, 0, 27 }, { 28, 
TERM2, 0, 27 }, { 28, 
TERM4, 0, 29 }, { 28, 
TERM5, 0, 14 }, { 28, 
TERM6, 0, 14 }, { 28, 
TERM7, 0, 14 }, { 28, 
TERM8, 0, 14 }, { 28, 
HELIPAD1, 0, 14 }, { 28, 
HELIPAD2, 0, 14 }, { 28, 0, 0, 29 },
 
  680   { 29, 255, TERM_GROUP1_block, 0 }, { 29, 
TERM4, 
TERM4_block, 7 }, { 29, 
HANGAR, HANGAR1_AREA_block, 27 }, { 29, 
TAKEOFF, 0, 30 }, { 29, 0, 0, 28 },
 
  681   { 30, 0, OUT_WAY_block2, 31 },
 
  682   { 31, 0, OUT_WAY_block, 32 },
 
  684   { 32, 
TAKEOFF, RUNWAY_OUT_block, 33 },
 
  685   { 33, 0, RUNWAY_OUT_block, 34 },
 
  690   { 37, 
LANDING, RUNWAY_IN_block, 38 },
 
  691   { 38, 0, RUNWAY_IN_block, 39 },
 
  692   { 39, 0, RUNWAY_IN_block, 40 },
 
  694   { 41, 0, IN_WAY_block, 42 },
 
  695   { 42, 255, IN_WAY_block, 0 }, { 42, 255, TERM_GROUP1_block, 0 }, { 42, 255, TERM_GROUP1_block, 1 }, { 42, 
HANGAR, 0, 2 }, { 42, 0, 0, 26 },
 
  698   { 44, 
FLYING, 0, 45 }, { 44, 
HELILANDING, 0, 47 }, { 44, 
LANDING, 0, 69 }, { 44, 0, 0, 45 },
 
  700   { 46, 
FLYING, 0, 43 }, { 46, 
LANDING, 0, 76 }, { 46, 0, 0, 43 },
 
  703   { 48, 
HELIENDLANDING, PRE_HELIPAD_block, 48 }, { 48, 
HELIPAD1, 0, 49 }, { 48, 
HELIPAD2, 0, 50 }, { 48, 
HANGAR, 0, 55 },
 
  704   { 49, 0, NOTHING_block, 51 },
 
  705   { 50, 0, NOTHING_block, 52 },
 
  707   { 51, 255, NOTHING_block, 0 }, { 51, 
HELIPAD1, 
HELIPAD1_block, 12 }, { 51, 
HANGAR, 0, 55 }, { 51, 0, 0, 12 },
 
  708   { 52, 255, NOTHING_block, 0 }, { 52, 
HELIPAD2, 
HELIPAD2_block, 13 }, { 52, 
HANGAR, 0, 55 }, { 52, 0, 0, 13 },
 
  712   { 55, 0, HANGAR2_AREA_block, 56 }, 
 
  713   { 56, 0, HANGAR2_AREA_block, 3 },
 
  715   { 57, 255, OUT_WAY2_block, 0 }, { 57, 
TAKEOFF, 0, 58 }, { 57, 0, 0, 58 },
 
  716   { 58, 0, OUT_WAY2_block, 59 },
 
  722   { 63, 
LANDING, RUNWAY_IN2_block, 64 },
 
  723   { 64, 0, RUNWAY_IN2_block, 65 },
 
  724   { 65, 0, RUNWAY_IN2_block, 66 },
 
  725   { 66, 
ENDLANDING, RUNWAY_IN2_block, 0 }, { 66, 255, 0, 1 }, { 66, 255, 0, 0 }, { 66, 0, 0, 67 },
 
  726   { 67, 0, IN_WAY2_block, 68 },
 
  727   { 68, 255, IN_WAY2_block, 0 }, { 68, 255, TERM_GROUP2_block, 1 }, { 68, 255, TERM_GROUP1_block, 0 }, { 68, 
HANGAR, HANGAR2_AREA_block, 22 }, { 68, 0, 0, 22 },
 
  728   { 69, 255, RUNWAY_IN2_block, 0 }, { 69, 0, RUNWAY_IN2_block, 63 },
 
  729   { 70, 255, TERM_GROUP2_EXIT1_block, 0 }, { 70, 
HELIPAD1, 
HELIPAD1_block, 12 }, { 70, 
HELITAKEOFF, 
HELIPAD1_block, 12 }, { 70, 0, 0, 71 },
 
  730   { 71, 255, TERM_GROUP2_EXIT1_block, 0 }, { 71, 
HELIPAD2, 
HELIPAD2_block, 13 }, { 71, 
HELITAKEOFF, 
HELIPAD1_block, 12 }, { 71, 0, 0, 24 },
 
  735   { 76, 255, RUNWAY_IN_block, 0 }, { 76, 0, RUNWAY_IN_block, 37 },
 
  741 static const byte _airport_entries_heliport[] = { 7, 7, 7, 7 };
 
  745   { 2, 255, AIRPORT_BUSY_block, 0 }, { 2, 
HELILANDING, 0, 3 }, { 2, 
HELITAKEOFF, 0, 1 },
 
  747   { 4, 
HELIENDLANDING, AIRPORT_BUSY_block, 4 }, { 4, 
HELIPAD1, 
HELIPAD1_block, 0 }, { 4, 
HELITAKEOFF, 0, 2 },
 
  749   { 5, 0, NOTHING_block, 6 },
 
  750   { 6, 0, NOTHING_block, 7 },
 
  751   { 7, 0, NOTHING_block, 8 },
 
  755 #define _airport_entries_oilrig _airport_entries_heliport 
  756 #define _airport_fta_oilrig _airport_fta_heliport 
  760 static const byte _airport_entries_helidepot[] = { 4, 4, 4, 4 };
 
  762   {  0, 
HANGAR, NOTHING_block, 1 },
 
  763   {  1, 255, HANGAR2_AREA_block, 0 }, { 1, 
HANGAR, 0, 0 }, { 1, 
HELIPAD1, 
HELIPAD1_block, 14 }, { 1, 
HELITAKEOFF, 0, 15 }, { 1, 0, 0, 0 },
 
  764   {  2, 
FLYING, NOTHING_block, 3 }, { 2, 
HELILANDING, PRE_HELIPAD_block, 7 }, { 2, 
HANGAR, 0, 12 }, { 2, 
HELITAKEOFF, NOTHING_block, 16 },
 
  766   {  3, 0, NOTHING_block, 4 },
 
  767   {  4, 0, NOTHING_block, 5 },
 
  768   {  5, 0, NOTHING_block, 6 },
 
  769   {  6, 0, NOTHING_block, 2 },
 
  772   {  8, 
HELIENDLANDING, PRE_HELIPAD_block, 8 }, { 8, 
HELIPAD1, 0, 9 }, { 8, 
HANGAR, 0, 12 }, { 8, 0, 0, 2 },
 
  773   {  9, 0, NOTHING_block, 10 },
 
  775   { 10, 255, NOTHING_block, 10 }, { 10, 
HELIPAD1, 
HELIPAD1_block, 14 }, { 10, 
HANGAR, 0, 1 }, { 10, 0, 0, 14 },
 
  778   { 12, 0, HANGAR2_AREA_block, 13 }, 
 
  779   { 13, 0, HANGAR2_AREA_block, 1 },
 
  780   { 14, 
HELIPAD1, 
HELIPAD1_block, 14 }, { 14, 
HANGAR, 0, 1 }, { 14, 
HELITAKEOFF, 0, 17 },
 
  783   { 17, 0, NOTHING_block, 11 },
 
  789 static const byte _airport_entries_helistation[] = { 25, 25, 25, 25 };
 
  791   {  0, 
HANGAR, NOTHING_block, 8 },    { 0, 
HELIPAD1, 0, 1 }, { 0, 
HELIPAD2, 0, 1 }, { 0, 
HELIPAD3, 0, 1 }, { 0, 
HELITAKEOFF, 0, 1 }, { 0, 0, 0, 0 },
 
  792   {  1, 255, HANGAR2_AREA_block, 0 },  { 1, 
HANGAR, 0, 0 }, { 1, 
HELITAKEOFF, 0, 3 }, { 1, 0, 0, 4 },
 
  794   {  2, 
FLYING, NOTHING_block, 28 },   { 2, 
HELILANDING, 0, 15 }, { 2, 0, 0, 28 },
 
  797   {  4, 255, TAXIWAY_BUSY_block, 0 },  { 4, 
HANGAR, HANGAR2_AREA_block, 1 }, { 4, 
HELITAKEOFF, 0, 1 }, { 4, 0, 0, 5 },
 
  798   {  5, 255, TAXIWAY_BUSY_block, 0 },  { 5, 
HELIPAD1, 
HELIPAD1_block, 6 }, { 5, 
HELIPAD2, 
HELIPAD2_block, 7 }, { 5, 
HELIPAD3, 
HELIPAD3_block, 8 }, { 5, 0, 0, 4 },
 
  799   {  6, 
HELIPAD1, 
HELIPAD1_block, 5 }, { 6, 
HANGAR, HANGAR2_AREA_block, 5 }, { 6, 
HELITAKEOFF, 0, 9 }, { 6, 0, 0, 6 },
 
  800   {  7, 
HELIPAD2, 
HELIPAD2_block, 5 }, { 7, 
HANGAR, HANGAR2_AREA_block, 5 }, { 7, 
HELITAKEOFF, 0, 10 }, { 7, 0, 0, 7 },
 
  801   {  8, 
HELIPAD3, 
HELIPAD3_block, 5 }, { 8, 
HANGAR, HANGAR2_AREA_block, 5 }, { 8, 
HELITAKEOFF, 0, 11 }, { 8, 0, 0, 8 },
 
  810   { 16, 
HELIENDLANDING, PRE_HELIPAD_block, 16 }, { 16, 
HELIPAD1, 0, 17 }, { 16, 
HELIPAD2, 0, 18 }, { 16, 
HELIPAD3, 0, 19 }, { 16, 
HANGAR, 0, 23 },
 
  811   { 17, 0, NOTHING_block, 20 },
 
  812   { 18, 0, NOTHING_block, 21 },
 
  813   { 19, 0, NOTHING_block, 22 },
 
  815   { 20, 255, NOTHING_block, 0 }, { 20, 
HELIPAD1, 
HELIPAD1_block, 6 }, { 20, 
HANGAR, 0, 23 }, { 20, 0, 0, 6 },
 
  816   { 21, 255, NOTHING_block, 0 }, { 21, 
HELIPAD2, 
HELIPAD2_block, 7 }, { 21, 
HANGAR, 0, 23 }, { 21, 0, 0, 7 },
 
  817   { 22, 255, NOTHING_block, 0 }, { 22, 
HELIPAD3, 
HELIPAD3_block, 8 }, { 22, 
HANGAR, 0, 23 }, { 22, 0, 0, 8 },
 
  818   { 23, 0, HANGAR2_AREA_block, 24 }, 
 
  819   { 24, 0, HANGAR2_AREA_block, 1 },
 
  820   { 25, 0, NOTHING_block, 26 },
 
  821   { 26, 0, NOTHING_block, 27 },
 
  822   { 27, 0, NOTHING_block, 2 },
 
  823   { 28, 0, NOTHING_block, 29 },
 
  824   { 29, 0, NOTHING_block, 30 },
 
  825   { 30, 0, NOTHING_block, 31 },
 
  826   { 31, 0, NOTHING_block, 32 },
 
  827   { 32, 0, NOTHING_block, 25 },