OpenTTD Source 20241224-master-gf74b0cf984
|
Command definitions related to stations. More...
Go to the source code of this file.
Functions | |
Town * | AirportGetNearestTown (const struct AirportSpec *as, Direction rotation, TileIndex tile, TileIterator &&it, uint &mindist) |
uint8_t | GetAirportNoiseLevelForDistance (const struct AirportSpec *as, uint distance) |
CommandCost | CmdBuildAirport (DoCommandFlag flags, TileIndex tile, uint8_t airport_type, uint8_t layout, StationID station_to_join, bool allow_adjacent) |
Place an Airport. | |
CommandCost | CmdBuildDock (DoCommandFlag flags, TileIndex tile, StationID station_to_join, bool adjacent) |
Build a dock/haven. | |
CommandCost | CmdBuildRailStation (DoCommandFlag flags, TileIndex tile_org, RailType rt, Axis axis, uint8_t numtracks, uint8_t plat_len, StationClassID spec_class, uint16_t spec_index, StationID station_to_join, bool adjacent) |
Build rail station. | |
CommandCost | CmdRemoveFromRailStation (DoCommandFlag flags, TileIndex start, TileIndex end, bool keep_rail) |
Remove a single tile from a rail station. | |
CommandCost | CmdBuildRoadStop (DoCommandFlag flags, TileIndex tile, uint8_t width, uint8_t length, RoadStopType stop_type, bool is_drive_through, DiagDirection ddir, RoadType rt, RoadStopClassID spec_class, uint16_t spec_index, StationID station_to_join, bool adjacent) |
Build a bus or truck stop. | |
CommandCost | CmdRemoveRoadStop (DoCommandFlag flags, TileIndex tile, uint8_t width, uint8_t height, RoadStopType stop_type, bool remove_road) |
Remove bus or truck stops. | |
CommandCost | CmdRenameStation (DoCommandFlag flags, StationID station_id, const std::string &text) |
Rename a station. | |
CommandCost | CmdOpenCloseAirport (DoCommandFlag flags, StationID station_id) |
Open/close an airport to incoming aircraft. | |
Command definitions related to stations.
Definition in file station_cmd.h.
CommandCost CmdBuildAirport | ( | DoCommandFlag | flags, |
TileIndex | tile, | ||
uint8_t | airport_type, | ||
uint8_t | layout, | ||
StationID | station_to_join, | ||
bool | allow_adjacent | ||
) |
Place an Airport.
flags | operation to perform |
tile | tile where airport will be built |
airport_type | airport type, |
layout | airport layout |
station_to_join | station ID to join (NEW_STATION if build new one) |
allow_adjacent | allow airports directly adjacent to other airports. |
Definition at line 2525 of file station_cmd.cpp.
References _settings_game, AAT_BUILT, OrthogonalTileArea::Add(), AddAnimatedTile(), CommandCost::AddCost(), Station::AddFacility(), Station::AfterStationTileSetChange(), AirportFTAClass::AIRPLANES, Station::airport, AirportGetNearestTown(), ANIM_STATUS_NO_ANIMATION, AirportTileSpec::animation, AT_OILRIG, BuildStationPart(), CheckFlatLandAirport(), CheckIfAuthorityAllowsNewStation(), ClosestTownFromTile(), CMD_ERROR, DC_EXEC, GameSettings::difficulty, DIR_E, DIR_W, StationSettings::distant_join_stations, GameSettings::economy, FACIL_AIRPORT, BaseStation::facilities, CommandCost::Failed(), FindJoiningStation(), Airport::flags, GB(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), AirportTileSpec::Get(), AirportSpec::Get(), GetAirport(), GetAirportNoiseLevelForDistance(), SpecializedStation< Station, false >::GetIfValid(), GetTranslatedAirportTileID(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_TILE, InvalidateWindowData(), AirportSpec::IsAvailable(), SpecializedStation< Station, false >::IsValidID(), AirportSpec::IsWithinMapBounds(), SpecializedStation< Station, false >::Iterate(), Airport::layout, AirportSpec::layouts, MakeAirport(), Town::MaxTownNoise(), Town::noise_reached, NUM_AIRPORTS, BaseStation::owner, BaseStation::rect, Airport::rotation, SetDParam(), SetStationTileRandomBits(), SetWindowDirty(), AirportSpec::size_x, AirportSpec::size_y, GameSettings::station, EconomySettings::station_noise_level, StationSettings::station_spread, AnimationInfo::status, Swap(), OrthogonalTileArea::tile, BaseStation::town, DifficultySettings::town_council_tolerance, Airport::type, UpdateAirplanesOnNewStation(), WATER_CLASS_INVALID, WC_STATION_VIEW, and WC_TOWN_VIEW.
CommandCost CmdBuildDock | ( | DoCommandFlag | flags, |
TileIndex | tile, | ||
StationID | station_to_join, | ||
bool | adjacent | ||
) |
Build a dock/haven.
flags | operation to perform |
tile | tile where dock will be built |
station_to_join | station ID to join (NEW_STATION if build new one) |
adjacent | allow docks directly adjacent to other docks. |
Definition at line 2791 of file station_cmd.cpp.
References _current_company, _settings_game, OrthogonalTileArea::Add(), CommandCost::AddCost(), Station::AddFacility(), Station::AfterStationTileSetChange(), BuildStationPart(), CheckIfAuthorityAllowsNewStation(), CMD_ERROR, DC_EXEC, StationSettings::distant_join_stations, EXPENSES_CONSTRUCTION, FACIL_DOCK, CommandCost::Failed(), FindJoiningStation(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), SpecializedStation< Station, false >::GetIfValid(), GetInclinedSlopeDirection(), GetTileSlope(), GetWaterClass(), OrthogonalTileArea::h, HasTileWaterClass(), HasTileWaterGround(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_DIAGDIR, IsBridgeAbove(), IsTileFlat(), IsTileOwner(), IsTileType(), SpecializedStation< Station, false >::IsValidID(), IsWaterTile(), MakeDock(), MP_WATER, BaseStation::owner, BaseStation::rect, ReverseDiagDir(), Station::ship_station, GameSettings::station, OrthogonalTileArea::tile, TileOffsByDiagDir(), ToTileIndexDiff(), OrthogonalTileArea::w, and WATER_CLASS_CANAL.
CommandCost CmdBuildRailStation | ( | DoCommandFlag | flags, |
TileIndex | tile_org, | ||
RailType | rt, | ||
Axis | axis, | ||
uint8_t | numtracks, | ||
uint8_t | plat_len, | ||
StationClassID | spec_class, | ||
uint16_t | spec_index, | ||
StationID | station_to_join, | ||
bool | adjacent | ||
) |
Build rail station.
flags | operation to perform |
tile_org | northern most position of station dragging/placement |
rt | railtype |
axis | orientation (Axis) |
numtracks | number of tracks |
plat_len | platform length |
spec_class | custom station class |
spec_index | custom station id |
station_to_join | station ID to join (NEW_STATION if build new one) |
adjacent | allow stations directly adjacent to other stations. |
Definition at line 1344 of file station_cmd.cpp.
References _current_company, _settings_game, Station::AddFacility(), AddTrackToSignalBuffer(), Station::AfterStationTileSetChange(), AllocateSpecToStation(), AXIS_X, AxisToDiagDir(), AxisToTrack(), BuildStationPart(), BaseStation::cached_anim_triggers, CalculateRailStationCost(), CALLBACK_FAILED, StationSpec::callback_mask, CanExpandRailStation(), CBID_STATION_AVAILABILITY, CBID_STATION_BUILD_TILE_LAYOUT, CBM_STATION_AVAIL, CheckIfAuthorityAllowsNewStation(), CMD_ERROR, Convert8bitBooleanCallback(), DC_EXEC, DeallocateSpecFromStation(), DeleteAnimatedTile(), StationSpec::disallowed_lengths, StationSpec::disallowed_platforms, StationSettings::distant_join_stations, ErrorUnknownCallbackResult(), FACIL_TRAIN, CommandCost::Failed(), FindJoiningStation(), FreeTrainReservation(), GB(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), NewGRFClass< Tspec, Tindex, Tmax >::Get(), NewGRFClass< Tspec, Tindex, Tmax >::GetClassCount(), GetCustomStationSpecIndex(), GetPlatformInfo(), GetRailStationAxis(), GetRailType(), NewGRFClass< Tspec, Tindex, Tmax >::GetSpec(), NewGRFClass< Tspec, Tindex, Tmax >::GetSpecCount(), GetStationGfx(), GetStationLayout(), GetTrainForReservation(), StationSpec::grf_prop, GRFFilePropsBase< Tcnt >::grffile, GRFFilePropsBase< Tcnt >::grfid, HasBit(), HasStationReservation(), HasStationTileRail(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, Company::infrastructure, INVALID_TILE, IsCompatibleTrainStationTile(), IsRailStationTile(), IsStationTileBlocked(), IsValidAxis(), SpecializedStation< Station, false >::IsValidID(), IsWaypointClass(), MakeRailStation(), Station::MarkTilesDirty(), OtherAxis(), BaseStation::owner, CompanyInfrastructure::rail, BaseStation::rect, RestoreTrainReservation(), SAT_BUILT, SetAnimationFrame(), SetCustomStationSpecIndex(), SetRailStationPlatformReservation(), SetRailStationTileFlags(), SetStationGfx(), SetStationTileRandomBits(), CompanyInfrastructure::station, GameSettings::station, StationSettings::station_spread, OrthogonalTileArea::tile, TileOffsByAxis(), TileOffsByDiagDir(), BaseStation::train_station, AnimationInfo::triggers, ValParamRailType(), and YapfNotifyTrackLayoutChange().
CommandCost CmdBuildRoadStop | ( | DoCommandFlag | flags, |
TileIndex | tile, | ||
uint8_t | width, | ||
uint8_t | length, | ||
RoadStopType | stop_type, | ||
bool | is_drive_through, | ||
DiagDirection | ddir, | ||
RoadType | rt, | ||
RoadStopClassID | spec_class, | ||
uint16_t | spec_index, | ||
StationID | station_to_join, | ||
bool | adjacent | ||
) |
Build a bus or truck stop.
flags | Operation to perform. |
tile | Northernmost tile of the stop. |
width | Width of the road stop. |
length | Length of the road stop. |
stop_type | Type of road stop (bus/truck). |
is_drive_through | False for normal stops, true for drive-through. |
ddir | Entrance direction (DiagDirection) for normal stops. Converted to the axis for drive-through stops. |
rt | The roadtype. |
spec_class | Road stop spec class. |
spec_index | Road stop spec index. |
station_to_join | Station ID to join (NEW_STATION if build new one). |
adjacent | Allow stations directly adjacent to other stations. |
Definition at line 1964 of file station_cmd.cpp.
References _current_company, _settings_game, OrthogonalTileArea::Add(), Station::AddFacility(), Station::AfterStationTileSetChange(), BuildStationPart(), Station::bus_station, BaseStation::cached_roadstop_anim_triggers, CalculateRoadStopCost(), CALLBACK_FAILED, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_roadstop_pool >::CanAllocateItem(), CBID_STATION_AVAILABILITY, CBM_ROAD_STOP_AVAIL, CheckIfAuthorityAllowsNewStation(), CMD_ERROR, Convert8bitBooleanCallback(), CountBits(), DC_EXEC, DiagDirToAxis(), StationSettings::distant_join_stations, FACIL_BUS_STOP, FACIL_TRUCK_STOP, CommandCost::Failed(), FindJoiningRoadStop(), FindRoadStopSpot(), GB(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::Get(), NewGRFClass< Tspec, Tindex, Tmax >::Get(), RoadStopSpec::GetBuildCost(), NewGRFClass< Tspec, Tindex, Tmax >::GetClassCount(), GetRoadBits(), GetRoadOwner(), NewGRFClass< Tspec, Tindex, Tmax >::GetSpec(), NewGRFClass< Tspec, Tindex, Tmax >::GetSpecCount(), RoadStopSpec::grf_prop, GRFFilePropsBase< Tcnt >::grffile, OrthogonalTileArea::h, HasBit(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_ROADTYPE, INVALID_TILE, IsNormalRoadTile(), IsStationRoadStop(), IsTileType(), IsValidDiagDirection(), SpecializedStation< Station, false >::IsValidID(), IsValidTile(), IsWaypointClass(), RoadStop::MakeDriveThrough(), MakeDriveThroughRoadStop(), MakeRoadStop(), MarkTileDirtyByTile(), MayHaveRoad(), MP_STATION, BaseStation::owner, BaseStation::rect, RemoveRoadStop(), ROAD_STOP_TRACKBIT_FACTOR, ROADSTOP_BUS, ROADSTOP_END, ROADSTOP_TRUCK, ROADSTOPTYPE_ALL, ROADSTOPTYPE_FREIGHT, ROADSTOPTYPE_PASSENGER, RSF_DRIVE_THROUGH_ONLY, SAT_BUILT, SetCustomRoadStopSpecIndex(), GameSettings::station, StationSettings::station_spread, TileAddWrap(), AnimationInfo::triggers, Station::truck_station, UpdateCompanyRoadInfrastructure(), ValParamRoadType(), and OrthogonalTileArea::w.
CommandCost CmdOpenCloseAirport | ( | DoCommandFlag | flags, |
StationID | station_id | ||
) |
Open/close an airport to incoming aircraft.
flags | Operation to perform. |
station_id | Station ID of the airport. |
Definition at line 2735 of file station_cmd.cpp.
References Station::airport, AIRPORT_CLOSED_block, CheckOwnership(), CMD_ERROR, DC_EXEC, FACIL_AIRPORT, BaseStation::facilities, CommandCost::Failed(), Airport::flags, SpecializedStation< Station, false >::Get(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, SpecializedStation< Station, false >::IsValidID(), BaseStation::owner, OWNER_NONE, SetWindowWidgetDirty(), WC_STATION_VIEW, and WID_SV_CLOSE_AIRPORT.
CommandCost CmdRemoveFromRailStation | ( | DoCommandFlag | flags, |
TileIndex | start, | ||
TileIndex | end, | ||
bool | keep_rail | ||
) |
Remove a single tile from a rail station.
This allows for custom-built station with holes and weird layouts
flags | operation to perform |
start | tile of station piece to remove |
end | other edge of the rect to remove |
keep_rail | if set keep the rail |
Definition at line 1749 of file station_cmd.cpp.
References CMD_ERROR, CommandCost::Failed(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_TILE, RemoveFromRailBaseStation(), SetWindowWidgetDirty(), Map::Size(), OrthogonalTileArea::tile, BaseStation::train_station, WC_STATION_VIEW, and WID_SV_TRAINS.
CommandCost CmdRemoveRoadStop | ( | DoCommandFlag | flags, |
TileIndex | tile, | ||
uint8_t | width, | ||
uint8_t | height, | ||
RoadStopType | stop_type, | ||
bool | remove_road | ||
) |
Remove bus or truck stops.
flags | Operation to perform. |
tile | Northernmost tile of the removal area. |
width | Width of the removal area. |
height | Height of the removal area. |
stop_type | Type of stop (bus/truck). |
remove_road | Remove roads of drive-through stops? |
Definition at line 2381 of file station_cmd.cpp.
References CMD_ERROR, DC_BANKRUPT, INVALID_TILE, IsValidTile(), RemoveGenericRoadStop(), ROADSTOP_BUS, ROADSTOP_END, and TileAddWrap().
CommandCost CmdRenameStation | ( | DoCommandFlag | flags, |
StationID | station_id, | ||
const std::string & | text | ||
) |
Rename a station.
flags | operation to perform |
station_id | station ID that is to be renamed |
text | the new name or an empty string when resetting to the default |
Definition at line 4313 of file station_cmd.cpp.
References BaseStation::cached_name, CheckOwnership(), CMD_ERROR, DC_EXEC, CommandCost::Failed(), SpecializedStation< Station, false >::GetIfValid(), InvalidateWindowData(), MAX_LENGTH_STATION_NAME_CHARS, BaseStation::name, BaseStation::owner, Station::UpdateVirtCoord(), Utf8StringLength(), and WC_STATION_LIST.