Add GetTileTrackStatus wrapper for when red signals part is not needed
This commit is contained in:
@@ -1876,7 +1876,7 @@ static bool CheckSignalAutoFill(TileIndex &tile, Trackdir &trackdir, int &signal
|
||||
if (tile == INVALID_TILE) return false;
|
||||
|
||||
/* Check for track bits on the new tile */
|
||||
TrackdirBits trackdirbits = TrackStatusToTrackdirBits(GetTileTrackStatus(tile, TRANSPORT_RAIL, 0));
|
||||
TrackdirBits trackdirbits = GetTileTrackdirBits(tile, TRANSPORT_RAIL, 0);
|
||||
|
||||
if (TracksOverlap(TrackdirBitsToTrackBits(trackdirbits))) return false;
|
||||
trackdirbits &= TrackdirReachesTrackdirs(trackdir);
|
||||
@@ -1920,7 +1920,7 @@ static bool CheckSignalAutoFill(TileIndex &tile, Trackdir &trackdir, int &signal
|
||||
signal_ctr += GetTunnelBridgeLength(orig_tile, tile) * 2;
|
||||
|
||||
/* Check for track bits on the new tile */
|
||||
trackdirbits = TrackStatusToTrackdirBits(GetTileTrackStatus(tile, TRANSPORT_RAIL, 0));
|
||||
trackdirbits = GetTileTrackdirBits(tile, TRANSPORT_RAIL, 0);
|
||||
|
||||
if (TracksOverlap(TrackdirBitsToTrackBits(trackdirbits))) return false;
|
||||
trackdirbits &= TrackdirReachesTrackdirs(trackdir);
|
||||
@@ -3916,6 +3916,7 @@ static TrackStatus GetTileTrackStatus_Track(TileIndex tile, TransportType mode,
|
||||
|
||||
case RAIL_TILE_SIGNALS: {
|
||||
trackbits = GetTrackBits(tile);
|
||||
if (sub_mode & TTSSM_NO_RED_SIGNALS) break;
|
||||
byte a = GetPresentSignals(tile);
|
||||
uint b = GetSignalStates(tile);
|
||||
|
||||
@@ -3953,7 +3954,7 @@ static TrackStatus GetTileTrackStatus_Track(TileIndex tile, TransportType mode,
|
||||
static bool ClickTile_Track(TileIndex tile)
|
||||
{
|
||||
if (_ctrl_pressed && IsPlainRailTile(tile)) {
|
||||
TrackBits trackbits = TrackStatusToTrackBits(GetTileTrackStatus(tile, TRANSPORT_RAIL, 0));
|
||||
TrackBits trackbits = TrackdirBitsToTrackBits(GetTileTrackdirBits(tile, TRANSPORT_RAIL, 0));
|
||||
|
||||
if (trackbits & TRACK_BIT_VERT) { // N-S direction
|
||||
trackbits = (_tile_fract_coords.x <= _tile_fract_coords.y) ? TRACK_BIT_RIGHT : TRACK_BIT_LEFT;
|
||||
|
Reference in New Issue
Block a user