- if(!already_at_end)
- {
- // We are not at the end of the route now, but might have been before.
- arrival = ON_THE_WAY;
- train.refresh_blocks_from(*fncb);
- if(!arrival)
- train.stop_at(0);
+ if(!sequence_points.empty())
+ {
+ const SequencePoint &sp = sequence_points.front();
+ if(sp.block==fncb.block() && !sp.is_cleared())
+ {
+ arrival = WAITING_FOR_SEQUENCE;
+ sequence_check_pending = true;
+ }
+ }