diff --git a/train_cmd.c b/train_cmd.c --- a/train_cmd.c +++ b/train_cmd.c @@ -1005,7 +1005,9 @@ int32 CmdMoveRailVehicle(int x, int y, u r = CheckTrainStoppedInDepot(dst_head); if (r < 0) return CMD_ERROR; - num += r; + /* If we move in the same vehicle, it is okay */ + if (dst_head != src_head) + num += r; assert(dst_head->tile == src_head->tile); }