|
|
|
@ -31,12 +31,14 @@ enum VehicleEnterTileStatus {
|
|
|
|
|
enum RoadVehicleStates {
|
|
|
|
|
/*
|
|
|
|
|
* Lower 4 bits are used for vehicle track direction. (Trackdirs)
|
|
|
|
|
* When in a road stop (bit 5 set) these bits give the
|
|
|
|
|
* When in a road stop (bit 5 or bit 6 set) these bits give the
|
|
|
|
|
* track direction of the entry to the road stop.
|
|
|
|
|
* As the entry direction will always be a diagonal
|
|
|
|
|
* direction (X_NE, Y_SE, X_SW or Y_NW) only bits 0 and 3
|
|
|
|
|
* are needed to hold this direction. Bit 1 is then used to show
|
|
|
|
|
* that the vehicle is using the second road stop bay.
|
|
|
|
|
* Bit 2 is then used for drive-through stops to show the vehicle
|
|
|
|
|
* is stopping at this road stop.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/* Numeric values */
|
|
|
|
@ -46,13 +48,11 @@ enum RoadVehicleStates {
|
|
|
|
|
/* Bit numbers */
|
|
|
|
|
RVS_USING_SECOND_BAY = 1, ///< Only used while in a road stop
|
|
|
|
|
RVS_IS_STOPPING = 2, ///< Only used for drive-through stops. Vehicle will stop here
|
|
|
|
|
RVS_DRIVE_SIDE = 4, ///< Only used when retrieving move data and for turning vehicles
|
|
|
|
|
RVS_DRIVE_SIDE = 4, ///< Only used when retrieving move data
|
|
|
|
|
RVS_IN_ROAD_STOP = 5, ///< The vehicle is in a road stop
|
|
|
|
|
RVS_IN_DT_ROAD_STOP = 6, ///< The vehicle is in a drive-through road stop
|
|
|
|
|
|
|
|
|
|
/* Bit sets of the above specified bits */
|
|
|
|
|
RVSB_USING_SECOND_BAY = 1 << RVS_USING_SECOND_BAY, ///< Only used while in a road stop
|
|
|
|
|
RVSB_DRIVE_SIDE = 1 << RVS_DRIVE_SIDE, ///< Only used when retrieving move data and for turning vehicles
|
|
|
|
|
RVSB_IN_ROAD_STOP = 1 << RVS_IN_ROAD_STOP, ///< The vehicle is in a road stop
|
|
|
|
|
RVSB_IN_ROAD_STOP_END = RVSB_IN_ROAD_STOP + TRACKDIR_END,
|
|
|
|
|
RVSB_IN_DT_ROAD_STOP = 1 << RVS_IN_DT_ROAD_STOP, ///< The vehicle is in a drive-through road stop
|
|
|
|
|