From 13d9690f3a185b2dc68f2060eb151f21f1fb8cf7 Mon Sep 17 00:00:00 2001 From: bjarni Date: Thu, 11 May 2006 14:24:33 +0000 Subject: [PATCH] (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) --- vehicle.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vehicle.c b/vehicle.c index 3d11030140..63d8611291 100644 --- a/vehicle.c +++ b/vehicle.c @@ -1534,6 +1534,7 @@ int32 CmdCloneVehicle(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) } 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 @@ int32 CmdCloneVehicle(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) 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);