(svn r19286) -Fix (r18648): [YAPP] If reversing at path signals was disabled, a train would not reverse when hitting the back of an one-way signal.

This commit is contained in:
michi_cc 2010-02-28 08:18:20 +00:00
parent a19e6ff974
commit eae120361d
1 changed files with 5 additions and 2 deletions

View File

@ -3364,8 +3364,11 @@ static void TrainController(Train *v, Vehicle *nomove)
}
/* If we would reverse but are currently in a PBS block and
* reversing of stuck trains is disabled, don't reverse. */
if (_settings_game.pf.wait_for_pbs_path == 255 && UpdateSignalsOnSegment(v->tile, enterdir, v->owner) == SIGSEG_PBS) {
* reversing of stuck trains is disabled, don't reverse.
* This does not apply if the reason for reversing is a one-way
* signal blocking us, because a train would then be stuck forever. */
if (_settings_game.pf.wait_for_pbs_path == 255 && !HasOnewaySignalBlockingTrackdir(gp.new_tile, i) &&
UpdateSignalsOnSegment(v->tile, enterdir, v->owner) == SIGSEG_PBS) {
v->wait_counter = 0;
return;
}