Functions related to stations. More...
#include "station_type.h"
#include "sprite.h"
#include "rail_type.h"
#include "road_type.h"
#include "cargo_type.h"
#include "company_type.h"
Go to the source code of this file.
Functions | |
void | ModifyStationRatingAround (TileIndex tile, Owner owner, int amount, uint radius) |
void | FindStationsAroundTiles (const TileArea &location, StationList *stations) |
Find all stations around a rectangular producer (industry, house, headquarter, . | |
void | ShowStationViewWindow (StationID station) |
Opens StationViewWindow for given station. | |
void | UpdateAllStationVirtCoords () |
Update the virtual coords needed to draw the station sign for all stations. | |
CargoArray | GetProductionAroundTiles (TileIndex tile, int w, int h, int rad) |
Get the cargo types being produced around the tile (in a rectangle). | |
CargoArray | GetAcceptanceAroundTiles (TileIndex tile, int w, int h, int rad, uint32 *always_accepted=NULL) |
Get the acceptance of cargos around the tile in 1/8. | |
void | UpdateStationAcceptance (Station *st, bool show_msg) |
Update the acceptance for a station. | |
const DrawTileSprites * | GetStationTileLayout (StationType st, byte gfx) |
void | StationPickerDrawSprite (int x, int y, StationType st, RailType railtype, RoadType roadtype, int image) |
bool | HasStationInUse (StationID station, CompanyID company) |
Tests whether the company's vehicles have this station in orders When company == INVALID_COMPANY, then check all vehicles. | |
RoadStop * | GetRoadStopByTile (TileIndex tile, RoadStopType type) |
uint | GetNumRoadStops (const Station *st, RoadStopType type) |
void | DeleteOilRig (TileIndex t) |
bool | IsStationTileBlocked (TileIndex tile) |
bool | IsStationTileElectrifiable (TileIndex tile) |
void | UpdateAirportsNoise () |
Recalculate the noise generated by the airports of each town. |
Functions related to stations.
Definition in file station_func.h.
void FindStationsAroundTiles | ( | const TileArea & | location, | |
StationList * | stations | |||
) |
Find all stations around a rectangular producer (industry, house, headquarter, .
..)
location | The location/area of the producer | |
stations | The list to store the stations in |
Definition at line 3016 of file station_cmd.cpp.
References _settings_game, CA_UNMODIFIED, SpecializedStation< Station, false >::GetByTile(), Station::GetCatchmentRadius(), TileArea::h, SmallVector< T, S >::Include(), INVALID_TILE, IsTileType(), MAX_CATCHMENT, StationSettings::modified_catchment, MP_STATION, GameSettings::station, TileArea::tile, TileAddWrap(), and TileArea::w.
Referenced by AIIndustry::GetAmountOfStationsAround(), StationFinder::GetStations(), and WhoCanServiceIndustry().
CargoArray GetAcceptanceAroundTiles | ( | TileIndex | tile, | |
int | w, | |||
int | h, | |||
int | rad, | |||
uint32 * | always_accepted | |||
) |
Get the acceptance of cargos around the tile in 1/8.
tile | Center of the search area | |
w | X extent of area | |
h | Y extent of area | |
rad | Search radius in addition to given area | |
always_accepted | bitmask of cargo accepted by houses and headquarters; can be NULL |
Definition at line 524 of file station_cmd.cpp.
References MapSizeX(), MapSizeY(), max(), min(), TileX(), TileXY(), and TileY().
Referenced by AITileList_IndustryAccepting::AITileList_IndustryAccepting(), DrawStationCoverageAreaText(), AITile::GetCargoAcceptance(), and UpdateStationAcceptance().
CargoArray GetProductionAroundTiles | ( | TileIndex | tile, | |
int | w, | |||
int | h, | |||
int | rad | |||
) |
Get the cargo types being produced around the tile (in a rectangle).
tile | Northtile of area | |
w | X extent of the area | |
h | Y extent of the area | |
rad | Search radius in addition to the given area |
Definition at line 471 of file station_cmd.cpp.
References CT_INVALID, TileArea::Intersects(), lengthof, Industry::location, MapSizeX(), MapSizeY(), max(), min(), Industry::produced_cargo, TILE_AREA_LOOP, TileX(), TileXY(), and TileY().
Referenced by DrawStationCoverageAreaText(), and AITile::GetCargoProduction().
Tests whether the company's vehicles have this station in orders When company == INVALID_COMPANY, then check all vehicles.
station | station ID | |
company | company ID, INVALID_COMPANY to disable the check |
Definition at line 2130 of file station_cmd.cpp.
References Order::GetDestination(), INVALID_COMPANY, and Order::IsType().
Referenced by CompanyStationsWindow::BuildStationsList(), and RemoveBuoy().
void ShowStationViewWindow | ( | StationID | station | ) |
Opens StationViewWindow for given station.
station | station which window should be opened |
Definition at line 1249 of file station_gui.cpp.
void UpdateAllStationVirtCoords | ( | ) |
Update the virtual coords needed to draw the station sign for all stations.
Definition at line 428 of file station_cmd.cpp.
References BaseStation::UpdateVirtCoord().
Referenced by CmdRenameTown(), and UpdateAllVirtCoords().
void UpdateStationAcceptance | ( | Station * | st, | |
bool | show_msg | |||
) |
Update the acceptance for a station.
st | Station to update | |
show_msg | controls whether to display a message that acceptance was changed. |
Definition at line 558 of file station_cmd.cpp.
References Station::always_accepted, CC_PASSENGERS, CT_INVALID, FACIL_BUS_STOP, FACIL_TRUCK_STOP, BaseStation::facilities, GetAcceptanceAroundTiles(), GetAcceptanceMask(), Station::GetCatchmentRadius(), Station::goods, HasBit(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tcache, Tzero >::PoolItem< Tpool >::index, IsCargoInClass(), BaseStation::IsInUse(), lengthof, min(), NUM_CARGO, BaseStation::owner, BaseStation::rect, SB(), SetWindowWidgetDirty(), ShowRejectOrAcceptNews(), SVW_ACCEPTLIST, and TileXY().
Referenced by CmdBuildAirport(), CmdBuildDock(), CmdBuildRailStation(), CmdBuildRoadStop(), and StationHandleBigTick().