X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Flibr2c2%2Ftimetable.cpp;h=da01b599876d03c7f18d0e1bae05eb2951e9bff5;hb=03a22611772265b539f826f1f8bc482e71ca4a99;hp=41cbbf00ab834350714025c865853d54462c4796;hpb=b85fa11e45805cd71383577642030d8d01f43447;p=r2c2.git diff --git a/source/libr2c2/timetable.cpp b/source/libr2c2/timetable.cpp index 41cbbf0..da01b59 100644 --- a/source/libr2c2/timetable.cpp +++ b/source/libr2c2/timetable.cpp @@ -89,22 +89,6 @@ void Timetable::tick(const Time::TimeDelta &dt) { if(update_pending && !train.get_block_allocator().is_active()) update_route(); - - if(current_row->type==DEPART) - { - const Clock &clock = train.get_layout().get_clock(); - - Time::TimeDelta t = clock.get_current_time(); - if(ttime) - t += Time::day; - - Time::TimeDelta b = t-dt*clock.get_rate(); - if(btime) - { - train.ai_message(Message("set-target-speed", train.get_maximum_speed())); - ++current_row; - } - } } void Timetable::save(list &st) const @@ -202,11 +186,18 @@ void Timetable::update_route() dt += Time::day; train.ai_message(Message("set-trip-duration", dt/clock.get_rate())); } + + late_arrival = false; } void Timetable::event(TrainAI &, const Message &msg) { - if(msg.type=="arrived") + if(msg.type=="departed") + { + if(current_row->type==DEPART) + ++current_row; + } + else if(msg.type=="arrived") { if(current_row->type==ARRIVE) record_time();