|
@@ -50,49 +50,49 @@ struct StationRect : public Rect {
|
|
|
StationRect& operator = (const Rect &src);
|
|
|
};
|
|
|
|
|
|
/** Base class for all station-ish types */
|
|
|
struct BaseStation : StationPool::PoolItem<&_station_pool> {
|
|
|
TileIndex xy; ///< Base tile of the station
|
|
|
ViewportSign sign; ///< NOSAVE: Dimensions of sign
|
|
|
byte delete_ctr; ///< Delete counter. If greater than 0 then it is decremented until it reaches 0; the waypoint is then is deleted.
|
|
|
|
|
|
char *name; ///< Custom name
|
|
|
StringID string_id; ///< Default name (town area) of station
|
|
|
|
|
|
Town *town; ///< The town this station is associated with
|
|
|
OwnerByte owner; ///< The owner of this station
|
|
|
StationFacilityByte facilities; ///< The facilities that this station has
|
|
|
|
|
|
uint8 num_specs; ///< Number of specs in the speclist
|
|
|
StationSpecList *speclist; ///< List of station specs of this station
|
|
|
|
|
|
Date build_date; ///< Date of construction
|
|
|
|
|
|
uint16 random_bits; ///< Random bits assigned to this station
|
|
|
byte waiting_triggers; ///< Waiting triggers (NewGRF) for this station
|
|
|
uint8 cached_anim_triggers; ///< NOSAVE: Combined animation trigger bitmask, used to determine if trigger processing should happen.
|
|
|
uint32 cached_cargo_triggers; ///< NOSAVE: Combined cargo trigger bitmask
|
|
|
CargoTypes cached_cargo_triggers; ///< NOSAVE: Combined cargo trigger bitmask
|
|
|
|
|
|
TileArea train_station; ///< Tile area the train 'station' part covers
|
|
|
StationRect rect; ///< NOSAVE: Station spread out rectangle maintained by StationRect::xxx() functions
|
|
|
|
|
|
/**
|
|
|
* Initialize the base station.
|
|
|
* @param tile The location of the station sign
|
|
|
*/
|
|
|
BaseStation(TileIndex tile) :
|
|
|
xy(tile),
|
|
|
train_station(INVALID_TILE, 0, 0)
|
|
|
{
|
|
|
}
|
|
|
|
|
|
virtual ~BaseStation();
|
|
|
|
|
|
/**
|
|
|
* Check whether a specific tile belongs to this station.
|
|
|
* @param tile the tile to check
|
|
|
* @return true if the tile belongs to this station
|
|
|
*/
|
|
|
virtual bool TileBelongsToRailStation(TileIndex tile) const = 0;
|
|
|
|
|
|
/**
|