Fix tram reversing on custom bridge head tiles.

(cherry picked from commit 0a345efc27)
This commit is contained in:
Jonathan G Rennison
2017-06-21 23:40:19 +01:00
parent 57a5f08687
commit e138d3564b
2 changed files with 8 additions and 2 deletions

View File

@@ -1895,6 +1895,12 @@ static VehicleEnterTileStatus VehicleEnter_TunnelBridge(Vehicle *v, TileIndex ti
case VEH_ROAD: {
RoadVehicle *rv = RoadVehicle::From(v);
if (IsRoadCustomBridgeHeadTile(tile)) {
RoadBits bits = ROAD_NONE;
if (rv->compatible_roadtypes & ROADTYPES_TRAM) bits |= GetCustomBridgeHeadRoadBits(tile, ROADTYPE_TRAM);
if (rv->compatible_roadtypes & ROADTYPES_ROAD) bits |= GetCustomBridgeHeadRoadBits(tile, ROADTYPE_ROAD);
if (!(bits & DiagDirToRoadBits(GetTunnelBridgeDirection(tile)))) return VETSB_CONTINUE;
}
rv->state = RVSB_WORMHOLE;
/* There are no slopes inside bridges / tunnels. */
ClrBit(rv->gv_flags, GVF_GOINGUP_BIT);