OpenTTD Source 20241224-master-gf74b0cf984
|
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. | |
bool | IsBridgeTile (Tile t) |
checks if there is a bridge on this tile | |
bool | IsBridgeAbove (Tile t) |
checks if a bridge is set above the ground of this tile | |
BridgeType | GetBridgeType (Tile t) |
Determines the type of bridge on a tile. | |
Axis | GetBridgeAxis (Tile t) |
Get the axis of the bridge that goes over the tile. | |
TileIndex | GetNorthernBridgeEnd (TileIndex t) |
Finds the northern end of a bridge starting at a middle tile. | |
TileIndex | GetSouthernBridgeEnd (TileIndex t) |
Finds the southern end of a bridge starting at a middle tile. | |
TileIndex | GetOtherBridgeEnd (TileIndex t) |
Starting at one bridge end finds the other bridge end. | |
int | GetBridgeHeight (TileIndex tile) |
Get the height ('z') of a bridge. | |
int | GetBridgePixelHeight (TileIndex tile) |
Get the height ('z') of a bridge in pixels. | |
void | ClearSingleBridgeMiddle (Tile t, Axis a) |
Remove the bridge over the given axis. | |
void | ClearBridgeMiddle (Tile t) |
Removes bridges from the given, that is bridges along the X and Y axis. | |
void | SetBridgeMiddle (Tile t, Axis a) |
Set that there is a bridge over the given axis. | |
void | MakeBridgeRamp (Tile t, Owner o, BridgeType bridgetype, DiagDirection d, TransportType tt) |
Generic part to make a bridge ramp for both roads and rails. | |
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. | |
void | MakeRailBridgeRamp (Tile t, Owner o, BridgeType bridgetype, DiagDirection d, RailType rt) |
Make a bridge ramp for rails. | |
void | MakeAqueductBridgeRamp (Tile t, Owner o, DiagDirection d) |
Make a bridge ramp for aqueducts. | |
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().
Referenced by AfterLoadGame(), and DoClearBridge().
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 CmdBuildBridge(), DrawBridgeMiddle(), DrawRailCatenaryOnBridge(), DrawRailCatenaryRailway(), 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 CmdBuildBridge(), CmdBuildObject(), CmdTerraformLand(), DoClearBridge(), DrawRailCatenaryRailway(), DrawRoadBits(), DrawRoadTypeCatenary(), GetBridgePixelHeight(), GetTerrainType(), 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 DrawBridgeMiddle(), DrawRailCatenaryOnBridge(), FloodVehicles(), and ViewportAddLandscape().
|
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 CmdBuildBridge(), DrawBridgeMiddle(), DrawTile_TunnelBridge(), RoadVehicle::GetCurrentMaxSpeed(), Train::GetCurrentMaxSpeed(), 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 AfterLoadGame(), CmdBuildBridge(), DrawBridgeMiddle(), DrawRailCatenaryRailway(), DrawRoadBits(), DrawRoadTypeCatenary(), and ViewportAddLandscape().
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 CmdBuildBridge(), DoClearBridge(), DrawRailCatenaryOnBridge(), FloodVehicles(), CFollowTrackT< Ttr_type_, VehicleType, T90deg_turns_allowed_, Tmask_reserved_tracks >::FollowTileExit(), GetOtherTunnelBridgeEnd(), GetRailTrackBitsUniversal(), and VisitWaterRegionPatchNeighbors().
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 CmdBuildObject(), 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 AfterLoadGame(), ClearPathReservation(), CmdBuildLongRoad(), CmdBuildRoad(), CmdConvertRail(), CmdConvertRoad(), IsBridgeTile(), and RemoveRoad().
|
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(), CmdBuildBridge(), CmdBuildBuoy(), CmdBuildDock(), CmdBuildObject(), CmdBuildRoadDepot(), CmdBuildShipDepot(), CmdBuildTrainDepot(), CmdPlantTree(), CmdTerraformLand(), DoBuildLock(), DrawBridgeMiddle(), DrawRailCatenaryRailway(), DrawRoadBits(), DrawRoadTypeCatenary(), GetBridgeAxis(), IsRoadAllowedHere(), IsValidTileForWaypoint(), SearchTileForStatue(), Vehicle::ShowVisualEffect(), TryBuildLightHouse(), TryBuildTransmitter(), and ViewportAddLandscape().
|
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 AfterLoadGame(), CmdBuildBridge(), DrawRailCatenaryRailway(), 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.
Referenced by CmdBuildBridge().
|
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.
Referenced by CmdBuildBridge().
|
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(), OWNER_TOWN, SetRoadOwner(), SetRoadTypes(), and TRANSPORT_ROAD.
Referenced by CmdBuildBridge().
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().
Referenced by AfterLoadGame(), and CmdBuildBridge().