]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/track.cpp
Things with different gauges don't go together
[r2c2.git] / source / libr2c2 / track.cpp
index 2ad3b53dcffe2779d611aa43b4f5a6acab2a3482..f1fdd992822180c26ddd5c39a6095bb8145516e4 100644 (file)
@@ -320,7 +320,11 @@ bool Track::link_to(Object &other)
        if(!otrack)
                return false;
 
-       float limit = layout.get_catalogue().get_gauge();
+       float gauge_ratio = otrack->get_type().get_gauge()/type.get_gauge();
+       if(gauge_ratio<0.99 || gauge_ratio>1.01)
+               return false;
+
+       float limit = type.get_gauge();
        if(!flex && !otrack->get_flex())
                limit /= 10;
        limit *= limit;
@@ -428,7 +432,7 @@ void Track::turnout_failed(unsigned id)
        if(id==turnout_id)
        {
                path_changing = false;
-               layout.emergency(format("Turnout %d failed", turnout_addr));
+               layout.emergency(block, "Turnout failed");
        }
 }