if(next_entry_ep.paths!=next_track->get_type().get_paths())
{
RoutingStep wait(this);
wait.advance(dt);
wait.trains[train_index].state = WAITING;
if(next_entry_ep.paths!=next_track->get_type().get_paths())
{
RoutingStep wait(this);
wait.advance(dt);
wait.trains[train_index].state = WAITING;
for(vector<TrainRoutingState>::const_iterator i=trains.begin(); i!=trains.end(); ++i)
if(i->remaining_estimate>=0)
cost_estimate += i->wait_time+((i->distance_traveled+i->remaining_estimate)/i->info->speed)*Time::sec;
for(vector<TrainRoutingState>::const_iterator i=trains.begin(); i!=trains.end(); ++i)
if(i->remaining_estimate>=0)
cost_estimate += i->wait_time+((i->distance_traveled+i->remaining_estimate)/i->info->speed)*Time::sec;