Skip to content

Commit c317b97

Browse files
authored
Merge pull request aburch#8 from jamespetts/master
keeping up to date
2 parents 968992a + ce658ff commit c317b97

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

simtool.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2440,7 +2440,7 @@ const char* tool_build_way_t::get_tooltip(const player_t *) const
24402440
}
24412441
any_prohibitive = true;
24422442
char tmpbuf[30];
2443-
sprintf(tmpbuf, "Prohibitive %i", i);
2443+
sprintf(tmpbuf, "Prohibitive %i-%i", desc->get_wtyp(), i);
24442444
n += sprintf(toolstr + n, " ");
24452445
n += sprintf(toolstr + n, translator::translate(tmpbuf));
24462446
}

vehicle/simvehicle.cc

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5181,6 +5181,7 @@ sint32 rail_vehicle_t::block_reserver(route_t *route, uint16 start_index, uint16
51815181
sint32 choose_return = 0;
51825182
bool reached_end_of_loop = false;
51835183
bool no_junctions_to_next_signal = true;
5184+
bool no_junctions_to_last_signal = true;
51845185
signal_t* previous_signal = NULL;
51855186
bool end_of_block = false;
51865187
bool not_entirely_free = false;
@@ -5908,6 +5909,7 @@ sint32 rail_vehicle_t::block_reserver(route_t *route, uint16 start_index, uint16
59085909
last_longblock_signal_index = i;
59095910
}
59105911
// Any junctions previously found no longer apply to the next signal, unless this is a pre-signal
5912+
no_junctions_to_last_signal = no_junctions_to_next_signal;
59115913
no_junctions_to_next_signal = true;
59125914
}
59135915
else if(!directional_only) // Distant signal or repeater
@@ -6555,11 +6557,11 @@ sint32 rail_vehicle_t::block_reserver(route_t *route, uint16 start_index, uint16
65556557

65566558
bool last_signal_was_track_circuit_block = false;
65576559

6558-
if (no_junctions_to_next_signal && reached_end_of_loop && success && last_stop_signal_index < INVALID_INDEX)
6560+
if (no_junctions_to_last_signal && reached_end_of_loop && success && last_stop_signal_index < INVALID_INDEX)
65596561
{
65606562
const grund_t* gr_signal = welt->lookup(route->at(last_stop_signal_index));
65616563
signal_t* signal = gr_signal->find<signal_t>();
6562-
if (signal)
6564+
if (signal && !signal->get_desc()->is_choose_sign())
65636565
{
65646566
signal->set_no_junctions_to_next_signal(true);
65656567
}

0 commit comments

Comments
 (0)