(svn r4829) -Codechage: [clone vehilces] only check for a free unitnumber for the first engine in the test run as well as execute run (to improve speed. The result should be unchanged)
--- a/vehicle.c Thu May 11 14:08:03 2006 +0000
+++ b/vehicle.c Thu May 11 14:24:33 2006 +0000
@@ -1534,6 +1534,7 @@
}
cost = DoCommand(tile, v->engine_type, build_argument, flags, CMD_BUILD_VEH(v->type));
+ build_argument = 3; // ensure that we only assign a number to the first engine
if (CmdFailed(cost)) return cost;
@@ -1556,7 +1557,6 @@
DoCommand(0, (w_rear->index << 16) | w->index, 1, flags, CMD_MOVE_RAIL_VEHICLE);
} else {
// this is a front engine or not a train. It need orders
- build_argument = 3; // set bit 1, so it will not assign numbers to engines in the rest of the train
w_front = w;
w->service_interval = v->service_interval;
DoCommand(0, (v->index << 16) | w->index, p2 & 1 ? CO_SHARE : CO_COPY, flags, CMD_CLONE_ORDER);