]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/vehicle.cpp
Things with different gauges don't go together
[r2c2.git] / source / libr2c2 / vehicle.cpp
index cb776f413daacb20f82889076aeab17e451cc842..6615fb25b768cebf6c05003eb1e52fba5d2efcd2 100644 (file)
@@ -106,6 +106,9 @@ void Vehicle::place(const TrackOffsetIter &t, VehiclePlacement::Anchor a)
 {
        if(!t)
                throw invalid_argument("Vehicle::place");
+       float gauge_ratio = t->get_type().get_gauge()/type.get_gauge();
+       if(gauge_ratio<0.99 || gauge_ratio>1.01)
+               throw logic_error("Incompatible gauge");
 
        placement.place(t, a);