(svn r11871) -Fix [FS#1074]: do not update signals after each tile when building/removing a large block of track/signals/station
This commit is contained in:
@@ -440,10 +440,13 @@ void ChangeOwnershipOfPlayerItems(PlayerID old_player, PlayerID new_player)
|
||||
TrackBits tracks = GetTrackBits(tile);
|
||||
do { // there may be two tracks with signals for TRACK_BIT_HORZ and TRACK_BIT_VERT
|
||||
Track track = RemoveFirstTrack(&tracks);
|
||||
if (HasSignalOnTrack(tile, track)) SetSignalsOnBothDir(tile, track, new_player);
|
||||
if (HasSignalOnTrack(tile, track)) AddTrackToSignalBuffer(tile, track, new_player);
|
||||
} while (tracks != TRACK_BIT_NONE);
|
||||
}
|
||||
} while (++tile != MapSize());
|
||||
|
||||
/* update signals in buffer */
|
||||
UpdateSignalsInBuffer();
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user