summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/road_cmd.cpp3
-rw-r--r--src/roadveh.h20
-rw-r--r--src/roadveh_cmd.cpp18
3 files changed, 22 insertions, 19 deletions
diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp
index de2094a32..d30279220 100644
--- a/src/road_cmd.cpp
+++ b/src/road_cmd.cpp
@@ -27,6 +27,7 @@
#include "functions.h"
#include "effectvehicle_func.h"
#include "elrail_func.h"
+#include "roadveh.h"
#include "table/sprites.h"
#include "table/strings.h"
@@ -1537,7 +1538,7 @@ static VehicleEnterTileStatus VehicleEnter_Road(Vehicle *v, TileIndex tile, int
case ROAD_TILE_DEPOT:
if (v->type == VEH_ROAD &&
- v->u.road.frame == 11 &&
+ v->u.road.frame == RVC_DEPOT_STOP_FRAME &&
_roadveh_enter_depot_dir[GetRoadDepotDirection(tile)] == v->u.road.state) {
v->u.road.state = RVSB_IN_DEPOT;
v->vehstatus |= VS_HIDDEN;
diff --git a/src/roadveh.h b/src/roadveh.h
index 5e1b7f455..31f8e49a8 100644
--- a/src/roadveh.h
+++ b/src/roadveh.h
@@ -10,6 +10,26 @@
#include "engine_base.h"
#include "economy_func.h"
+/** State information about the Road Vehicle controller */
+enum {
+ RDE_NEXT_TILE = 0x80, ///< We should enter the next tile
+ RDE_TURNED = 0x40, ///< We just finished turning
+
+ /* Start frames for when a vehicle enters a tile/changes its state.
+ * The start frame is different for vehicles that turned around or
+ * are leaving the depot as the do not start at the edge of the tile.
+ * For trams there are a few different start frames as there are two
+ * places where trams can turn. */
+ RVC_DEFAULT_START_FRAME = 0,
+ RVC_TURN_AROUND_START_FRAME = 1,
+ RVC_DEPOT_START_FRAME = 6,
+ RVC_START_FRAME_AFTER_LONG_TRAM = 21,
+ RVC_TURN_AROUND_START_FRAME_SHORT_TRAM = 16,
+ /* Stop frame for a vehicle in a drive-through stop */
+ RVC_DRIVE_THROUGH_STOP_FRAME = 7,
+ RVC_DEPOT_STOP_FRAME = 11,
+};
+
enum RoadVehicleSubType {
RVST_FRONT,
RVST_ARTIC_PART,
diff --git a/src/roadveh_cmd.cpp b/src/roadveh_cmd.cpp
index 05c842f54..acd5c18f3 100644
--- a/src/roadveh_cmd.cpp
+++ b/src/roadveh_cmd.cpp
@@ -1202,24 +1202,6 @@ static uint RoadFindPathToStop(const Vehicle *v, TileIndex tile)
return dist;
}
-enum {
- RDE_NEXT_TILE = 0x80,
- RDE_TURNED = 0x40,
-
- /* Start frames for when a vehicle enters a tile/changes its state.
- * The start frame is different for vehicles that turned around or
- * are leaving the depot as the do not start at the edge of the tile.
- * For trams there are a few different start frames as there are two
- * places where trams can turn. */
- RVC_DEFAULT_START_FRAME = 0,
- RVC_TURN_AROUND_START_FRAME = 1,
- RVC_DEPOT_START_FRAME = 6,
- RVC_START_FRAME_AFTER_LONG_TRAM = 21,
- RVC_TURN_AROUND_START_FRAME_SHORT_TRAM = 16,
- /* Stop frame for a vehicle in a drive-through stop */
- RVC_DRIVE_THROUGH_STOP_FRAME = 7
-};
-
struct RoadDriveEntry {
byte x, y;
};