Files
@ r4381:c965d1f3016a
Branch filter:
Location: cpp/openttd-patchpack/source/road_map.c - annotation
r4381:c965d1f3016a
1.5 KiB
text/x-c
(svn r6131) -Codechange : Complete all missing _ttdpatch_flags entries
-Feature : both unifiedmaglevmode are now set.
Maglev and monorail are not allowed to run on each other tracks and will not be.
Setting those flags will allow grfsets as the Norvegian one to be loaded
-Codechange : link the TTDPatch's irregularstations with OTTD's nonuniform_stations
-Codechange : Reformat the whole array (thanks Rubidium, it sure looks better now)
-Feature : both unifiedmaglevmode are now set.
Maglev and monorail are not allowed to run on each other tracks and will not be.
Setting those flags will allow grfsets as the Norvegian one to be loaded
-Codechange : link the TTDPatch's irregularstations with OTTD's nonuniform_stations
-Codechange : Reformat the whole array (thanks Rubidium, it sure looks better now)
r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3196:ee64b4658e65 r3150:6242a630abac r3146:b3862f32db0e r3146:b3862f32db0e r3154:4ad5fba6d52a r3404:a8f769907ef8 r3927:7f9339259f74 r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3793:c42788f521bd r3146:b3862f32db0e r3793:c42788f521bd r3793:c42788f521bd r3793:c42788f521bd r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3404:a8f769907ef8 r3404:a8f769907ef8 r3146:b3862f32db0e r3146:b3862f32db0e r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3977:63d936e7e5a8 r3154:4ad5fba6d52a r3154:4ad5fba6d52a r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3146:b3862f32db0e r3150:6242a630abac r3150:6242a630abac r3150:6242a630abac r3150:6242a630abac r4233:35ef15227e43 r4233:35ef15227e43 r4233:35ef15227e43 r4233:35ef15227e43 r4233:35ef15227e43 r3927:7f9339259f74 r4233:35ef15227e43 r4233:35ef15227e43 r4233:35ef15227e43 r3150:6242a630abac | /* $Id$ */
#include "stdafx.h"
#include "openttd.h"
#include "bridge_map.h"
#include "functions.h"
#include "road_map.h"
#include "station.h"
#include "tunnel_map.h"
#include "station_map.h"
#include "depot.h"
RoadBits GetAnyRoadBits(TileIndex tile)
{
switch (GetTileType(tile)) {
case MP_STREET:
switch (GetRoadTileType(tile)) {
default:
case ROAD_TILE_NORMAL: return GetRoadBits(tile);
case ROAD_TILE_CROSSING: return GetCrossingRoadBits(tile);
case ROAD_TILE_DEPOT: return DiagDirToRoadBits(GetRoadDepotDirection(tile));
}
case MP_STATION:
if (!IsRoadStopTile(tile)) return 0;
return DiagDirToRoadBits(GetRoadStopDir(tile));
case MP_TUNNELBRIDGE:
if (IsBridge(tile)) {
if (IsBridgeMiddle(tile)) {
if (!IsTransportUnderBridge(tile) ||
GetBridgeTransportType(tile) != TRANSPORT_ROAD) {
return 0;
}
return GetRoadBitsUnderBridge(tile);
} else {
// ending
if (GetBridgeTransportType(tile) != TRANSPORT_ROAD) return 0;
return DiagDirToRoadBits(ReverseDiagDir(GetBridgeRampDirection(tile)));
}
} else {
// tunnel
if (GetTunnelTransportType(tile) != TRANSPORT_ROAD) return 0;
return DiagDirToRoadBits(ReverseDiagDir(GetTunnelDirection(tile)));
}
default: return 0;
}
}
TrackBits GetAnyRoadTrackBits(TileIndex tile)
{
uint32 r;
// Don't allow building through road depot tiles.
if (IsTileType(tile, MP_STREET) && IsTileDepotType(tile, TRANSPORT_ROAD)) {
return 0;
}
r = GetTileTrackStatus(tile, TRANSPORT_ROAD);
return (byte)(r | (r >> 8));
}
|