OpenTTD Source  13.2.1
station_cmd.h File Reference
#include "command_type.h"
#include "station_type.h"

Go to the source code of this file.

Functions

enum StationClassID byte CommandCost CmdBuildAirport (DoCommandFlag flags, TileIndex tile, byte airport_type, byte layout, StationID station_to_join, bool allow_adjacent)
 Place an Airport. More...
 
CommandCost CmdBuildDock (DoCommandFlag flags, TileIndex tile, StationID station_to_join, bool adjacent)
 Build a dock/haven. More...
 
CommandCost CmdBuildRailStation (DoCommandFlag flags, TileIndex tile_org, RailType rt, Axis axis, byte numtracks, byte plat_len, StationClassID spec_class, byte spec_index, StationID station_to_join, bool adjacent)
 Build rail station. More...
 
CommandCost CmdRemoveFromRailStation (DoCommandFlag flags, TileIndex start, TileIndex end, bool keep_rail)
 Remove a single tile from a rail station. More...
 
CommandCost CmdBuildRoadStop (DoCommandFlag flags, TileIndex tile, uint8 width, uint8 length, RoadStopType stop_type, bool is_drive_through, DiagDirection ddir, RoadType rt, StationID station_to_join, bool adjacent)
 Build a bus or truck stop. More...
 
CommandCost CmdRemoveRoadStop (DoCommandFlag flags, TileIndex tile, uint8 width, uint8 height, RoadStopType stop_type, bool remove_road)
 Remove bus or truck stops. More...
 
CommandCost CmdRenameStation (DoCommandFlag flags, StationID station_id, const std::string &text)
 Rename a station. More...
 
CommandCost CmdOpenCloseAirport (DoCommandFlag flags, StationID station_id)
 Open/close an airport to incoming aircraft. More...
 

Detailed Description

Command definitions related to stations.

Definition in file station_cmd.h.

Function Documentation

◆ CmdBuildAirport()

enum StationClassID byte CommandCost CmdBuildAirport ( DoCommandFlag  flags,
TileIndex  tile,
byte  airport_type,
byte  layout,
StationID  station_to_join,
bool  allow_adjacent 
)

Place an Airport.

Parameters
flagsoperation to perform
tiletile where airport will be built
airport_typeairport type,
See also
airport.h
Parameters
layoutairport layout
station_to_joinstation ID to join (NEW_STATION if build new one)
allow_adjacentallow airports directly adjacent to other airports.
Returns
the cost of this operation or an error

Definition at line 2211 of file station_cmd.cpp.

◆ CmdBuildDock()

CommandCost CmdBuildDock ( DoCommandFlag  flags,
TileIndex  tile,
StationID  station_to_join,
bool  adjacent 
)

Build a dock/haven.

Parameters
flagsoperation to perform
tiletile where dock will be built
station_to_joinstation ID to join (NEW_STATION if build new one)
adjacentallow docks directly adjacent to other docks.
Returns
the cost of this operation or an error

Definition at line 2476 of file station_cmd.cpp.

◆ CmdBuildRailStation()

CommandCost CmdBuildRailStation ( DoCommandFlag  flags,
TileIndex  tile_org,
RailType  rt,
Axis  axis,
byte  numtracks,
byte  plat_len,
StationClassID  spec_class,
byte  spec_index,
StationID  station_to_join,
bool  adjacent 
)

Build rail station.

Parameters
flagsoperation to perform
tile_orgnorthern most position of station dragging/placement
rtrailtype
axisorientation (Axis)
numtracksnumber of tracks
plat_lenplatform length
spec_classcustom station class
spec_indexcustom station id
station_to_joinstation ID to join (NEW_STATION if build new one)
adjacentallow stations directly adjacent to other stations.
Returns
the cost of this operation or an error

Definition at line 1260 of file station_cmd.cpp.

References AXIS_X, CheckIfAuthorityAllowsNewStation(), CMD_ERROR, CommandCost::Failed(), NewGRFClass< Tspec, Tid, Tmax >::Get(), IsValidAxis(), STAT_CLASS_WAYP, and ValParamRailtype().

◆ CmdBuildRoadStop()

CommandCost CmdBuildRoadStop ( DoCommandFlag  flags,
TileIndex  tile,
uint8  width,
uint8  length,
RoadStopType  stop_type,
bool  is_drive_through,
DiagDirection  ddir,
RoadType  rt,
StationID  station_to_join,
bool  adjacent 
)

Build a bus or truck stop.

Parameters
flagsOperation to perform.
tileNorthernmost tile of the stop.
widthWidth of the road stop.
lengthLength of the road stop.
stop_typeType of road stop (bus/truck).
is_drive_throughFalse for normal stops, true for drive-through.
ddirEntrance direction (DiagDirection) for normal stops. Converted to the axis for drive-through stops.
rtThe roadtype.
station_to_joinStation ID to join (NEW_STATION if build new one).
adjacentAllow stations directly adjacent to other stations.
Returns
The cost of this operation or an error.

Definition at line 1827 of file station_cmd.cpp.

References CMD_ERROR, IsValidDiagDirection(), ROADSTOP_END, and ValParamRoadType().

◆ CmdOpenCloseAirport()

◆ CmdRemoveFromRailStation()

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

Parameters
flagsoperation to perform
starttile of station piece to remove
endother edge of the rect to remove
keep_railif set keep the rail
Returns
the cost of this operation or an error

Definition at line 1657 of file station_cmd.cpp.

References CMD_ERROR, MapSize(), and RemoveFromRailBaseStation().

◆ CmdRemoveRoadStop()

CommandCost CmdRemoveRoadStop ( DoCommandFlag  flags,
TileIndex  tile,
uint8  width,
uint8  height,
RoadStopType  stop_type,
bool  remove_road 
)

Remove bus or truck stops.

Parameters
flagsOperation to perform.
tileNorthernmost tile of the removal area.
widthWidth of the removal area.
heightHeight of the removal area.
stop_typeType of stop (bus/truck).
remove_roadRemove roads of drive-through stops?
Returns
The cost of this operation or an error.

Definition at line 2058 of file station_cmd.cpp.

References CMD_ERROR, DC_BANKRUPT, EXPENSES_CONSTRUCTION, GetRoadStopType(), INVALID_ROADTYPE, INVALID_TILE, IsDriveThroughStopTile(), IsRoadStop(), IsTileType(), IsValidTile(), MP_STATION, OWNER_NONE, ROAD_NONE, ROADSTOP_END, and TileAddWrap().

◆ CmdRenameStation()

CommandCost CmdRenameStation ( DoCommandFlag  flags,
StationID  station_id,
const std::string &  text 
)

Rename a station.

Parameters
flagsoperation to perform
station_idstation ID that is to be renamed
textthe new name or an empty string when resetting to the default
Returns
the cost of this operation or an error

Definition at line 3897 of file station_cmd.cpp.

References CheckOwnership(), CMD_ERROR, CommandCost::Failed(), SpecializedStation< Station, false >::GetIfValid(), MAX_LENGTH_STATION_NAME_CHARS, BaseStation::owner, and Utf8StringLength().