diff --git a/src/microsim/MSBaseVehicle.cpp b/src/microsim/MSBaseVehicle.cpp index cc334e67dd1a..d828298e4a0e 100644 --- a/src/microsim/MSBaseVehicle.cpp +++ b/src/microsim/MSBaseVehicle.cpp @@ -714,6 +714,9 @@ MSBaseVehicle::addTransportable(MSTransportable* transportable) { } myContainerDevice->addTransportable(transportable); } + if (myEnergyParams != nullptr) { + myEnergyParams->setTransportableMass(myEnergyParams->getTransportableMass() + transportable->getVehicleType().getMass()); + } } @@ -2216,6 +2219,9 @@ MSBaseVehicle::removeTransportable(MSTransportable* t) { if (myContainerDevice != nullptr) { myContainerDevice->removeTransportable(t); } + if (myEnergyParams != nullptr) { + myEnergyParams->setTransportableMass(myEnergyParams->getTransportableMass() - t->getVehicleType().getMass()); + } }