|
@@ -1184,32 +1184,32 @@ static void TileLoop_TunnelBridge(TileIn
|
|
|
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
static void ClickTile_TunnelBridge(TileIndex tile)
|
|
|
{
|
|
|
/* not used */
|
|
|
}
|
|
|
|
|
|
|
|
|
static uint32 GetTileTrackStatus_TunnelBridge(TileIndex tile, TransportType mode, uint sub_mode, DiagDirection side)
|
|
|
static TrackStatus GetTileTrackStatus_TunnelBridge(TileIndex tile, TransportType mode, uint sub_mode, DiagDirection side)
|
|
|
{
|
|
|
TransportType transport_type = GetTunnelBridgeTransportType(tile);
|
|
|
if (transport_type != mode || (transport_type == TRANSPORT_ROAD && (GetRoadTypes(tile) & sub_mode) == 0)) return 0;
|
|
|
|
|
|
DiagDirection dir = GetTunnelBridgeDirection(tile);
|
|
|
if (side != INVALID_DIAGDIR && side != ReverseDiagDir(dir)) return 0;
|
|
|
return AxisToTrackBits(DiagDirToAxis(dir)) * 0x101;
|
|
|
return CombineTrackStatus(TrackBitsToTrackdirBits(AxisToTrackBits(DiagDirToAxis(dir))), TRACKDIR_BIT_NONE);
|
|
|
}
|
|
|
|
|
|
static void ChangeTileOwner_TunnelBridge(TileIndex tile, PlayerID old_player, PlayerID new_player)
|
|
|
{
|
|
|
if (!IsTileOwner(tile, old_player)) return;
|
|
|
|
|
|
if (new_player != PLAYER_SPECTATOR) {
|
|
|
SetTileOwner(tile, new_player);
|
|
|
} else {
|
|
|
if (CmdFailed(DoCommand(tile, 0, 0, DC_EXEC | DC_BANKRUPT, CMD_LANDSCAPE_CLEAR))) {
|
|
|
/* When clearing the bridge/tunnel failed there are still vehicles on/in
|
|
|
* the bridge/tunnel. As all *our* vehicles are already removed, they
|