summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/depot_gui.cpp3
-rw-r--r--src/vehicle_gui.cpp6
2 files changed, 7 insertions, 2 deletions
diff --git a/src/depot_gui.cpp b/src/depot_gui.cpp
index 25d36b690..106d9c95f 100644
--- a/src/depot_gui.cpp
+++ b/src/depot_gui.cpp
@@ -821,7 +821,8 @@ struct DepotWindow : Window {
*/
virtual bool OnVehicleSelect(const Vehicle *v)
{
- if (DoCommandP(this->window_number, v->index, _ctrl_pressed ? 1 : 0, CMD_CLONE_VEHICLE | CMD_MSG(STR_ERROR_CAN_T_BUY_TRAIN + v->type), CcCloneVehicle)) {
+ /* Suppress the vehicle GUI when share-cloning. There is no point to it, starting vehicles can also be done via the depot GUI. */
+ if (DoCommandP(this->window_number, v->index, _ctrl_pressed ? 1 : 0, CMD_CLONE_VEHICLE | CMD_MSG(STR_ERROR_CAN_T_BUY_TRAIN + v->type), _ctrl_pressed ? NULL : CcCloneVehicle)) {
ResetObjectToPlace();
}
return true;
diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp
index f64a3cc47..19cc7d217 100644
--- a/src/vehicle_gui.cpp
+++ b/src/vehicle_gui.cpp
@@ -2525,9 +2525,13 @@ public:
ShowVehicleDetailsWindow(v);
break;
case WID_VV_CLONE: // clone vehicle
+ /* Suppress the vehicle GUI when share-cloning.
+ * There is no point to it except for starting the vehicle.
+ * For starting the vehicle the player has to open the depot GUI, which is
+ * most likely already open, but is also visible in the vehicle viewport. */
DoCommandP(v->tile, v->index, _ctrl_pressed ? 1 : 0,
_vehicle_command_translation_table[VCT_CMD_CLONE_VEH][v->type],
- CcCloneVehicle);
+ _ctrl_pressed ? NULL : CcCloneVehicle);
break;
case WID_VV_TURN_AROUND: // turn around
assert(v->IsGroundVehicle());