OpenTTD Source
20241108-master-g80f628063a
|
Map accessor functions for bridges. More...
Go to the source code of this file.
Functions | |
bool | IsBridge (Tile t) |
Checks if this is a bridge, instead of a tunnel. More... | |
bool | IsBridgeTile (Tile t) |
checks if there is a bridge on this tile More... | |
bool | IsBridgeAbove (Tile t) |
checks if a bridge is set above the ground of this tile More... | |
BridgeType | GetBridgeType (Tile t) |
Determines the type of bridge on a tile. More... | |
Axis | GetBridgeAxis (Tile t) |
Get the axis of the bridge that goes over the tile. More... | |
TileIndex | GetNorthernBridgeEnd (TileIndex t) |
Finds the northern end of a bridge starting at a middle tile. More... | |
TileIndex | GetSouthernBridgeEnd (TileIndex t) |
Finds the southern end of a bridge starting at a middle tile. More... | |
TileIndex | GetOtherBridgeEnd (TileIndex t) |
Starting at one bridge end finds the other bridge end. More... | |
int | GetBridgeHeight (TileIndex tile) |
Get the height ('z') of a bridge. More... | |
int | GetBridgePixelHeight (TileIndex tile) |
Get the height ('z') of a bridge in pixels. More... | |
void | ClearSingleBridgeMiddle (Tile t, Axis a) |
Remove the bridge over the given axis. More... | |
void | ClearBridgeMiddle (Tile t) |
Removes bridges from the given, that is bridges along the X and Y axis. More... | |
void | SetBridgeMiddle (Tile t, Axis a) |
Set that there is a bridge over the given axis. More... | |
void | MakeBridgeRamp (Tile t, Owner o, BridgeType bridgetype, DiagDirection d, TransportType tt) |
Generic part to make a bridge ramp for both roads and rails. More... | |
void | MakeRoadBridgeRamp (Tile t, Owner o, Owner owner_road, Owner owner_tram, BridgeType bridgetype, DiagDirection d, RoadType road_rt, RoadType tram_rt) |
Make a bridge ramp for roads. More... | |
void | MakeRailBridgeRamp (Tile t, Owner o, BridgeType bridgetype, DiagDirection d, RailType rt) |
Make a bridge ramp for rails. More... | |
void | MakeAqueductBridgeRamp (Tile t, Owner o, DiagDirection d) |
Make a bridge ramp for aqueducts. More... | |
Map accessor functions for bridges.
Definition in file bridge_map.h.
|
inline |
Removes bridges from the given, that is bridges along the X and Y axis.
t | the tile to remove the bridge from |
Definition at line 103 of file bridge_map.h.
References AXIS_X, AXIS_Y, and ClearSingleBridgeMiddle().
Remove the bridge over the given axis.
t | the tile to remove the bridge from |
a | the axis of the bridge to remove |
Definition at line 94 of file bridge_map.h.
References ClrBit(), and Tile::type().
Referenced by ClearBridgeMiddle().
Get the axis of the bridge that goes over the tile.
Not the axis or the ramp.
t | The tile to analyze |
Definition at line 68 of file bridge_map.h.
References GB(), IsBridgeAbove(), and Tile::type().
Referenced by DrawBridgeMiddle(), DrawRailCatenaryOnBridge(), GetNorthernBridgeEnd(), GetSouthernBridgeEnd(), and IsRoadAllowedHere().
int GetBridgeHeight | ( | TileIndex | t | ) |
Get the height ('z') of a bridge.
t | the bridge ramp tile to get the bridge height from |
Definition at line 70 of file bridge_map.cpp.
References ApplyFoundationToSlope(), DiagDirToAxis(), GetBridgeFoundation(), GetTileSlopeZ(), and GetTunnelBridgeDirection().
Referenced by CmdTerraformLand(), DrawRoadTypeCatenary(), GetBridgePixelHeight(), and MarkBridgeDirty().
|
inline |
Get the height ('z') of a bridge in pixels.
tile | the bridge ramp tile to get the bridge height from |
Definition at line 84 of file bridge_map.h.
References GetBridgeHeight(), and TILE_HEIGHT.
Referenced by FloodVehicles().
|
inline |
Determines the type of bridge on a tile.
t | The tile to analyze |
Definition at line 56 of file bridge_map.h.
References GB(), IsBridgeTile(), and Tile::m6().
Referenced by DrawBridgeMiddle(), and CFollowTrackT< Ttr_type_, VehicleType, T90deg_turns_allowed_, Tmask_reserved_tracks >::GetSpeedLimit().
Finds the northern end of a bridge starting at a middle tile.
t | the bridge tile to find the bridge ramp for |
Definition at line 39 of file bridge_map.cpp.
References AxisToDiagDir(), GetBridgeAxis(), GetBridgeEnd(), and ReverseDiagDir().
Referenced by DrawBridgeMiddle(), and DrawRoadTypeCatenary().
Starting at one bridge end finds the other bridge end.
tile | the bridge ramp tile to find the other bridge ramp for |
Definition at line 59 of file bridge_map.cpp.
References GetBridgeEnd(), GetTunnelBridgeDirection(), and IsBridgeTile().
Referenced by DoClearBridge(), DrawRailCatenaryOnBridge(), FloodVehicles(), CFollowTrackT< Ttr_type_, VehicleType, T90deg_turns_allowed_, Tmask_reserved_tracks >::FollowTileExit(), GetOtherTunnelBridgeEnd(), and GetRailTrackBitsUniversal().
Finds the southern end of a bridge starting at a middle tile.
t | the bridge tile to find the bridge ramp for |
Definition at line 49 of file bridge_map.cpp.
References AxisToDiagDir(), GetBridgeAxis(), and GetBridgeEnd().
Referenced by CmdTerraformLand(), DrawBridgeMiddle(), and DrawRailCatenaryOnBridge().
|
inline |
Checks if this is a bridge, instead of a tunnel.
t | The tile to analyze |
Definition at line 24 of file bridge_map.h.
References HasBit(), IsTileType(), Tile::m5(), and MP_TUNNELBRIDGE.
Referenced by ClearPathReservation(), CmdBuildLongRoad(), CmdConvertRail(), and IsBridgeTile().
|
inline |
checks if a bridge is set above the ground of this tile
t | The tile to analyze |
Definition at line 45 of file bridge_map.h.
References GB(), and Tile::type().
Referenced by CanBuildHouseHere(), CanPlantTreesOnTile(), CheckBuildableTile(), CheckIfIndustryTilesAreFree(), CmdBuildBuoy(), CmdBuildShipDepot(), CmdTerraformLand(), DrawBridgeMiddle(), DrawRoadTypeCatenary(), GetBridgeAxis(), IsRoadAllowedHere(), SearchTileForStatue(), and TryBuildTransmitter().
|
inline |
checks if there is a bridge on this tile
t | The tile to analyze |
Definition at line 35 of file bridge_map.h.
References IsBridge(), IsTileType(), and MP_TUNNELBRIDGE.
Referenced by FloodVehicles(), GetBridgeEnd(), GetBridgeType(), GetOtherBridgeEnd(), CFollowTrackT< Ttr_type_, VehicleType, T90deg_turns_allowed_, Tmask_reserved_tracks >::GetSpeedLimit(), PlaceRail_Bridge(), PlaceRoad_Bridge(), RedundantBridgeExistsNearby(), ShowBuildBridgeWindow(), CYapfCostBase::stSlopeCost(), TryReserveRailTrack(), UnreserveRailTrack(), and UpdateStatusAfterSwap().
|
inline |
Make a bridge ramp for aqueducts.
t | the tile to make a bridge ramp |
o | the new owner of the bridge ramp |
d | the direction this ramp must be facing |
Definition at line 181 of file bridge_map.h.
References MakeBridgeRamp(), and TRANSPORT_WATER.
|
inline |
Generic part to make a bridge ramp for both roads and rails.
t | the tile to make a bridge ramp |
o | the new owner of the bridge ramp |
bridgetype | the type of bridge this bridge ramp belongs to |
d | the direction this ramp must be facing |
tt | the transport type of the bridge |
Definition at line 128 of file bridge_map.h.
References INVALID_ROADTYPE, Tile::m2(), Tile::m3(), Tile::m4(), Tile::m5(), Tile::m6(), Tile::m7(), Tile::m8(), MP_TUNNELBRIDGE, SB(), SetDockingTile(), SetTileOwner(), and SetTileType().
Referenced by MakeAqueductBridgeRamp(), MakeRailBridgeRamp(), and MakeRoadBridgeRamp().
|
inline |
Make a bridge ramp for rails.
t | the tile to make a bridge ramp |
o | the new owner of the bridge ramp |
bridgetype | the type of bridge this bridge ramp belongs to |
d | the direction this ramp must be facing |
rt | the rail type of the bridge |
Definition at line 169 of file bridge_map.h.
References MakeBridgeRamp(), SetRailType(), and TRANSPORT_RAIL.
|
inline |
Make a bridge ramp for roads.
t | the tile to make a bridge ramp |
o | the new owner of the bridge ramp |
owner_road | the new owner of the road on the bridge |
owner_tram | the new owner of the tram on the bridge |
bridgetype | the type of bridge this bridge ramp belongs to |
d | the direction this ramp must be facing |
road_rt | the road type of the bridge |
tram_rt | the tram type of the bridge |
Definition at line 153 of file bridge_map.h.
References MakeBridgeRamp(), SetRoadOwner(), and TRANSPORT_ROAD.
Set that there is a bridge over the given axis.
t | the tile to add the bridge to |
a | the axis of the bridge to add |
Definition at line 114 of file bridge_map.h.
References SetBit(), and Tile::type().