diff --git a/src/articulated_vehicles.cpp b/src/articulated_vehicles.cpp index 92923ac3cd..657d28ec2c 100644 --- a/src/articulated_vehicles.cpp +++ b/src/articulated_vehicles.cpp @@ -427,6 +427,8 @@ void AddArticulatedParts(Vehicle *first) } t->refit_cap = 0; + if (front->IsVirtual()) t->SetVirtual(); + t->SetArticulatedPart(); break; } diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index bb088f8937..c8ff8e9e05 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -917,6 +917,7 @@ static void AddRearEngineToMultiheadedTrain(Train *v) u->random_bits = VehicleRandomBits(); v->SetMultiheaded(); u->SetMultiheaded(); + if (v->IsVirtual()) u->SetVirtual(); v->SetNext(u); u->UpdatePosition(); @@ -5195,6 +5196,7 @@ Train* CmdBuildVirtualRailWagon(const Engine *e) v->SetWagon(); v->SetFreeWagon(); + v->SetVirtual(); v->cargo_type = e->GetDefaultCargoType(); v->cargo_cap = rvi->capacity; @@ -5281,6 +5283,7 @@ Train* CmdBuildVirtualRailVehicle(EngineID eid, StringID &error) v->SetFrontEngine(); v->SetEngine(); + v->SetVirtual(); if (rvi->railveh_type == RAILVEH_MULTIHEAD) { AddRearEngineToMultiheadedTrain(v);