diff options
Diffstat (limited to 'src/ship.h')
-rw-r--r-- | src/ship.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ship.h b/src/ship.h index 7fea5fc1d..6e73332a5 100644 --- a/src/ship.h +++ b/src/ship.h @@ -12,17 +12,22 @@ #ifndef SHIP_H #define SHIP_H +#include <deque> + #include "vehicle_base.h" #include "water_map.h" void GetShipSpriteSize(EngineID engine, uint &width, uint &height, int &xoffs, int &yoffs, EngineImageType image_type); WaterClass GetEffectiveWaterClass(TileIndex tile); +typedef std::deque<TrackdirByte> ShipPathCache; + /** * All ships have this type. */ struct Ship FINAL : public SpecializedVehicle<Ship, VEH_SHIP> { TrackBitsByte state; ///< The "track" the ship is following. + ShipPathCache path; ///< Cached path. /** We don't want GCC to zero our struct! It already is zeroed and has an index! */ Ship() : SpecializedVehicleBase() {} @@ -46,6 +51,7 @@ struct Ship FINAL : public SpecializedVehicle<Ship, VEH_SHIP> { TileIndex GetOrderStationLocation(StationID station); bool FindClosestDepot(TileIndex *location, DestinationID *destination, bool *reverse); void UpdateCache(); + void SetDestTile(TileIndex tile); }; static const uint SHIP_MAX_ORDER_DISTANCE = 130; |