src/airport.h
changeset 6024 37e72f8f6a99
parent 6020 a7463b7eb894
child 6025 414b34699e87
--- a/src/airport.h	Thu Feb 15 17:51:39 2007 +0000
+++ b/src/airport.h	Thu Feb 15 20:16:33 2007 +0000
@@ -24,18 +24,6 @@
 	AT_OILRIG        = 15
 };
 
-// do not change unless you change v->subtype too. This aligns perfectly with its current setting
-enum AcceptPlanes {
-	ACC_BEGIN        = 0,
-	AIRCRAFT_ONLY    = 0,
-	ALL              = 1,
-	HELICOPTERS_ONLY = 2,
-	ACC_END
-};
-
-/** Define basic enum properties */
-template <> struct EnumPropsT<AcceptPlanes> : MakeEnumPropsT<AcceptPlanes, byte, ACC_BEGIN, ACC_END, ACC_END> {};
-typedef TinyEnumT<AcceptPlanes> AcceptPlanesByte;
 
 enum {
 	AMED_NOSPDCLAMP = 1 << 0,
@@ -133,12 +121,18 @@
 // Finite sTate mAchine --> FTA
 typedef struct AirportFTAClass {
 	public:
+		enum Flags {
+			PLANES      = 0x1,
+			HELICOPTERS = 0x2,
+			ALL         = PLANES | HELICOPTERS,
+		};
+
 		AirportFTAClass(
 			const AirportMovingData *moving_data,
 			const byte *terminals,
 			const byte *helipads,
 			byte entry_point,
-			AcceptPlanes acc_planes,
+			Flags flags,
 			const AirportFTAbuildup *apFA,
 			const TileIndexDiffC *depots,
 			byte nof_depots,
@@ -160,10 +154,10 @@
 	const byte *terminals;
 	const byte *helipads;
 	const TileIndexDiffC *airport_depots; // gives the position of the depots on the airports
+	Flags flags;
 	byte nof_depots;                      // number of depots this airport has
 	byte nofelements;                     // number of positions the airport consists of
 	byte entry_point;                     // when an airplane arrives at this airport, enter it at position entry_point
-	AcceptPlanesByte acc_planes;          // accept airplanes or helicopters or both
 	byte size_x;
 	byte size_y;
 	byte delta_z;                         // Z adjustment for helicopter pads