diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/order_cmd.cpp | 3 | ||||
-rw-r--r-- | src/ship.h | 2 | ||||
-rw-r--r-- | src/ship_cmd.cpp | 2 |
3 files changed, 5 insertions, 2 deletions
diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp index ba8a1a060..093e4b9b5 100644 --- a/src/order_cmd.cpp +++ b/src/order_cmd.cpp @@ -23,6 +23,7 @@ #include "core/random_func.hpp" #include "aircraft.h" #include "roadveh.h" +#include "ship.h" #include "station_base.h" #include "waypoint_base.h" #include "company_base.h" @@ -929,7 +930,7 @@ CommandCost CmdInsertOrder(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3 dist = GetOrderDistance(prev, &new_order, v); } - if (dist >= 130) { + if (dist >= SHIP_MAX_ORDER_DISTANCE) { return_cmd_error(STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION); } } diff --git a/src/ship.h b/src/ship.h index 0f396a237..7fea5fc1d 100644 --- a/src/ship.h +++ b/src/ship.h @@ -48,6 +48,8 @@ struct Ship FINAL : public SpecializedVehicle<Ship, VEH_SHIP> { void UpdateCache(); }; +static const uint SHIP_MAX_ORDER_DISTANCE = 130; + /** * Iterate over all ships. * @param var The variable used for iteration. diff --git a/src/ship_cmd.cpp b/src/ship_cmd.cpp index 080015eac..79560be04 100644 --- a/src/ship_cmd.cpp +++ b/src/ship_cmd.cpp @@ -459,7 +459,7 @@ static Track ChooseShipTrack(Ship *v, TileIndex tile, DiagDirection enterdir, Tr bool path_found = true; Track track; - if (v->dest_tile == 0 || DistanceManhattan(tile, v->dest_tile) > 130) { + if (v->dest_tile == 0 || DistanceManhattan(tile, v->dest_tile) > SHIP_MAX_ORDER_DISTANCE + 5) { /* No destination or destination too far, don't invoke pathfinder. */ static const TrackBits direction_to_trackbits[DIR_END] = { TRACK_BIT_LEFT | TRACK_BIT_RIGHT, // DIR_N |