Map accessor functions for bridges. More...
#include "road_map.h"
#include "bridge.h"
Go to the source code of this file.
Functions | |
static bool | IsBridge (TileIndex t) |
Checks if this is a bridge, instead of a tunnel. | |
static bool | IsBridgeTile (TileIndex t) |
checks if there is a bridge on this tile | |
static bool | MayHaveBridgeAbove (TileIndex t) |
checks for the possibility that a bridge may be on this tile These are in fact all the tile types on which a bridge can be found | |
static bool | IsBridgeAbove (TileIndex t) |
checks if a bridge is set above the ground of this tile | |
static BridgeType | GetBridgeType (TileIndex t) |
Determines the type of bridge on a tile. | |
static Axis | GetBridgeAxis (TileIndex 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. | |
uint | GetBridgeHeight (TileIndex tile) |
Get the height ('z') of a bridge in pixels. | |
static void | ClearSingleBridgeMiddle (TileIndex t, Axis a) |
Remove the bridge over the given axis. | |
static void | ClearBridgeMiddle (TileIndex t) |
Removes bridges from the given, that is bridges along the X and Y axis. | |
static void | SetBridgeMiddle (TileIndex t, Axis a) |
Set that there is a bridge over the given axis. | |
static void | MakeBridgeRamp (TileIndex t, Owner o, BridgeType bridgetype, DiagDirection d, TransportType tt, uint rt) |
Generic part to make a bridge ramp for both roads and rails. | |
static void | MakeRoadBridgeRamp (TileIndex t, Owner o, BridgeType bridgetype, DiagDirection d, RoadTypes r) |
Make a bridge ramp for roads. | |
static void | MakeRailBridgeRamp (TileIndex t, Owner o, BridgeType bridgetype, DiagDirection d, RailType r) |
Make a bridge ramp for rails. | |
static void | MakeAqueductBridgeRamp (TileIndex t, Owner o, DiagDirection d) |
Make a bridge ramp for aqueducts. |
Map accessor functions for bridges.
Definition in file bridge_map.h.
static void ClearBridgeMiddle | ( | TileIndex | t | ) | [inline, static] |
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 111 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 100 of file bridge_map.h.
References _m, ClrBit(), and MayHaveBridgeAbove().
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 82 of file bridge_map.h.
References _m, GB(), and IsBridgeAbove().
Referenced by CmdBuildBridge(), DrawBridgeMiddle(), DrawCatenaryOnBridge(), DrawCatenaryRailway(), GetNorthernBridgeEnd(), and GetSouthernBridgeEnd().
uint GetBridgeHeight | ( | TileIndex | t | ) |
Get the height ('z') of a bridge in pixels.
tile | the bridge ramp tile to get the bridge height from |
Definition at line 70 of file bridge_map.cpp.
References ApplyFoundationToSlope(), DiagDirToAxis(), GetBridgeFoundation(), GetTileSlope(), GetTunnelBridgeDirection(), and TILE_HEIGHT.
Referenced by CmdBuildBridge(), CmdBuildObject(), CmdTerraformLand(), DoClearBridge(), DrawBridgeMiddle(), DrawCatenaryOnBridge(), DrawCatenaryRailway(), DrawRoadBits(), DrawTramCatenary(), FloodVehicles(), and GetTerrainType().
static BridgeType GetBridgeType | ( | TileIndex | t | ) | [inline, static] |
Determines the type of bridge on a tile.
t | The tile to analyze |
Definition at line 70 of file bridge_map.h.
References _m, GB(), and IsBridgeTile().
Referenced by CmdBuildBridge(), DrawBridgeMiddle(), DrawTile_TunnelBridge(), AIBridge::GetBridgeID(), 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(), DrawCatenaryRailway(), DrawRoadBits(), and DrawTramCatenary().
Starting at one bridge end finds the other bridge end.
t | 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(), DrawCatenaryOnBridge(), 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 CmdBuildObject(), CmdTerraformLand(), DrawBridgeMiddle(), and DrawCatenaryOnBridge().
static bool IsBridge | ( | TileIndex | t | ) | [inline, static] |
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 _m, HasBit(), IsTileType(), and MP_TUNNELBRIDGE.
Referenced by AfterLoadGame(), CmdBuildLongRoad(), CmdBuildRoad(), CmdConvertRail(), IsBridgeTile(), and RemoveRoad().
static bool IsBridgeAbove | ( | TileIndex | t | ) | [inline, static] |
checks if a bridge is set above the ground of this tile
t | The tile to analyze |
Definition at line 58 of file bridge_map.h.
References _m, GB(), and MayHaveBridgeAbove().
Referenced by CanBuildHouseHere(), CanPlantTreesOnTile(), CheckBuildableTile(), CheckIfIndustryTilesAreFree(), CmdBuildBridge(), CmdBuildBuoy(), CmdBuildDock(), CmdBuildObject(), CmdBuildRoadDepot(), CmdBuildShipDepot(), CmdBuildTrainDepot(), CmdPlantTree(), CmdTerraformLand(), DoBuildLock(), DrawBridgeMiddle(), DrawCatenaryRailway(), DrawRoadBits(), DrawTramCatenary(), GetBridgeAxis(), IsValidTileForWaypoint(), SearchTileForStatue(), and Vehicle::ShowVisualEffect().
static bool IsBridgeTile | ( | TileIndex | t | ) | [inline, static] |
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(), DrawCatenaryRailway(), FloodVehicles(), GetBridgeEnd(), GetBridgeType(), GetOtherBridgeEnd(), CFollowTrackT< Ttr_type_, VehicleType, T90deg_turns_allowed_, Tmask_reserved_tracks >::GetSpeedLimit(), PlaceRail_Bridge(), PlaceRoad_Bridge(), CYapfCostBase::stSlopeCost(), and UpdateStatusAfterSwap().
static void MakeAqueductBridgeRamp | ( | TileIndex | t, | |
Owner | o, | |||
DiagDirection | d | |||
) | [inline, static] |
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 186 of file bridge_map.h.
References MakeBridgeRamp(), and TRANSPORT_WATER.
Referenced by CmdBuildBridge().
static void MakeBridgeRamp | ( | TileIndex | t, | |
Owner | o, | |||
BridgeType | bridgetype, | |||
DiagDirection | d, | |||
TransportType | tt, | |||
uint | rt | |||
) | [inline, static] |
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 | |
rt | the road or rail type |
Definition at line 139 of file bridge_map.h.
References _m, _me, Tile::m2, Tile::m3, Tile::m4, Tile::m5, TileExtended::m7, MP_TUNNELBRIDGE, SB(), SetTileOwner(), and SetTileType().
Referenced by MakeAqueductBridgeRamp(), MakeRailBridgeRamp(), and MakeRoadBridgeRamp().
static void MakeRailBridgeRamp | ( | TileIndex | t, | |
Owner | o, | |||
BridgeType | bridgetype, | |||
DiagDirection | d, | |||
RailType | r | |||
) | [inline, static] |
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 | |
r | the rail type of the bridge |
Definition at line 175 of file bridge_map.h.
References MakeBridgeRamp(), and TRANSPORT_RAIL.
Referenced by CmdBuildBridge().
static void MakeRoadBridgeRamp | ( | TileIndex | t, | |
Owner | o, | |||
BridgeType | bridgetype, | |||
DiagDirection | d, | |||
RoadTypes | r | |||
) | [inline, static] |
Make a bridge ramp for roads.
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 | |
r | the road type of the bridge |
Definition at line 159 of file bridge_map.h.
References MakeBridgeRamp(), OWNER_TOWN, ROADTYPE_ROAD, ROADTYPE_TRAM, SetRoadOwner(), SetRoadTypes(), and TRANSPORT_ROAD.
Referenced by CmdBuildBridge().
static bool MayHaveBridgeAbove | ( | TileIndex | t | ) | [inline, static] |
checks for the possibility that a bridge may be on this tile These are in fact all the tile types on which a bridge can be found
t | The tile to analyze |
Definition at line 46 of file bridge_map.h.
References IsTileType(), MP_CLEAR, MP_OBJECT, MP_RAILWAY, MP_ROAD, MP_TUNNELBRIDGE, and MP_WATER.
Referenced by AfterLoadGame(), CanBuildHouseHere(), CheckBuildableTile(), CheckIfIndustryTilesAreFree(), ClearSingleBridgeMiddle(), CmdBuildBridge(), CmdBuildBuoy(), CmdBuildDock(), CmdBuildObject(), CmdBuildRoadDepot(), CmdBuildShipDepot(), CmdBuildTrainDepot(), CmdTerraformLand(), DoBuildLock(), DrawCatenaryRailway(), DrawRoadBits(), DrawTramCatenary(), IsBridgeAbove(), IsValidTileForWaypoint(), MakeClear(), SearchTileForStatue(), SetBridgeMiddle(), and Vehicle::ShowVisualEffect().
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 123 of file bridge_map.h.
References _m, MayHaveBridgeAbove(), and SetBit().
Referenced by AfterLoadGame(), and CmdBuildBridge().