diff -r e2e8432018f6 -r 716c6dd9322a src/newgrf_engine.cpp --- a/src/newgrf_engine.cpp Mon Jun 11 13:38:11 2007 +0000 +++ b/src/newgrf_engine.cpp Mon Jun 11 14:00:16 2007 +0000 @@ -507,7 +507,7 @@ switch (variable) { case 0x40: // Get length of consist case 0x41: // Get length of same consecutive wagons - if (v->type != VEH_TRAIN) return 1; + if (!v->HasFront()) return 1; { const Vehicle* u; @@ -830,7 +830,7 @@ res->ResolveReal = &VehicleResolveReal; res->u.vehicle.self = v; - res->u.vehicle.parent = (v != NULL && v->type == VEH_TRAIN) ? GetFirstVehicleInChain(v) : v; + res->u.vehicle.parent = (v != NULL && v->HasFront()) ? GetFirstVehicleInChain(v) : v; res->u.vehicle.self_type = engine_type;