X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Ftrainrouter.cpp;h=5a8d9f7e16cfde6f2654c5f23a696f70bd0e4bc4;hb=64a4768a48db0f8fde3bf93c512024698f12e3ca;hp=a5a63b4f7754f18f7f688616696a3a4a924359ae;hpb=d27013f6fa4a84cd088d9e7eb7901512304bbea3;p=r2c2.git diff --git a/source/libr2c2/trainrouter.cpp b/source/libr2c2/trainrouter.cpp index a5a63b4..5a8d9f7 100644 --- a/source/libr2c2/trainrouter.cpp +++ b/source/libr2c2/trainrouter.cpp @@ -1,3 +1,4 @@ +#include "driver.h" #include "layout.h" #include "route.h" #include "trackiter.h" @@ -225,24 +226,28 @@ void TrainRouter::message(const Message &msg) void TrainRouter::tick(const Time::TimeDelta &dt) { - if(delay) - { - delay -= dt; - if(delaycheck()!=TrainRoutePlanner::PENDING) apply_plan(train.get_layout(), *planner); + Layout &layout = train.get_layout(); + if(!layout.get_driver().is_halted() && !layout.get_clock().is_stopped()) + { + if(delay) + { + delay -= dt; + if(delay