OpenTTD

Functions
road_internal.h File Reference

Functions used internally by the roads. More...

`#include "tile_cmd.h"`
`#include "road_type.h"`

Go to the source code of this file.

## Functions
RoadBits | CleanUpRoadBits (const TileIndex tile, RoadBits org_rb)
| Clean up unnecessary RoadBits of a planed tile. More...
CommandCost | CheckAllowRemoveRoad (TileIndex tile, RoadBits remove, Owner owner, RoadType rt, DoCommandFlag flags, bool town_check=true)
| Is it allowed to remove the given road bits from the given tile? More...
void | DrawRoadCatenary (const TileInfo *ti, RoadBits tram)
| Draws the catenary for the given tile. More...

## Detailed Description

Functions used internally by the roads.

Definition in file road_internal.h.

## Function Documentation

## ◆ CheckAllowRemoveRoad()

CommandCost CheckAllowRemoveRoad | ( | TileIndex | tile,
|  | RoadBits | remove,
|  | Owner | owner,
|  | RoadType | rt,
|  | DoCommandFlag | flags,
|  | bool | town_check
| ) |  |

Is it allowed to remove the given road bits from the given tile?

Parameters

  tile | the tile to remove the road from
  remove | the roadbits that are going to be removed
  owner | the actual owner of the roadbits of the tile
  rt | the road type to remove the bits from
  flags | command flags
  town_check | Shall the town rating checked/affected

Returns
  A succeeded command when it is allowed to remove the road bits, a failed command otherwise.

Definition at line 116 of file road_cmd.cpp.

Referenced by CanRemoveRoadWithStop(), and RemoveRoad().

## ◆ CleanUpRoadBits()

RoadBits CleanUpRoadBits | ( | const TileIndex | tile,
|  | RoadBits | org_rb
| ) |  |

Clean up unnecessary RoadBits of a planed tile.

Parameters

  tile | current tile
  org_rb | planed RoadBits

Returns
  optimised RoadBits

Definition at line 46 of file road.cpp.

References DIAGDIR_BEGIN, DIAGDIR_END, DiagDirToAxis(), DiagDirToRoadBits(), GetAnyRoadBits(), GetTileType(), IsNormalRoadTile(), IsPossibleCrossing(), IsValidTile(), IsWater(), MirrorRoadBits(), MP_CLEAR, MP_RAILWAY, MP_ROAD, MP_STATION, MP_TREES, MP_TUNNELBRIDGE, MP_WATER, ROAD_NONE, ROADTYPE_ROAD, ROADTYPE_TRAM, and TileAddByDiagDir().

## ◆ DrawRoadCatenary()

void DrawRoadCatenary | ( | const TileInfo * | ti,
|  | RoadBits | tram
| ) |  |

Draws the catenary for the given tile.

Parameters

  ti | information about the tile (slopes, height etc)
  tram | the roadbits for the tram

Definition at line 1194 of file road_cmd.cpp.

References IsBridgeAbove(), IsInvisibilitySet(), IsTransparencySet(), TileInfo::tile, and TO_CATENARY.