diff --git a/src/main/scala/net/psforever/objects/vehicles/control/CargoCarrierControl.scala b/src/main/scala/net/psforever/objects/vehicles/control/CargoCarrierControl.scala index 0c6d3084..a8028d01 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/CargoCarrierControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/CargoCarrierControl.scala @@ -25,15 +25,16 @@ class CargoCarrierControl(vehicle: Vehicle) /** * If the vehicle becomes disabled, the safety and autonomy of the cargo should be prioritized. - * @param kickPassengers passengers need to be ejected "by force" + * @param kickPassengers passengers need to be ejected "by force"; + * actually controls bail protection and flavors a log message (further down the line) */ override def PrepareForDisabled(kickPassengers: Boolean) : Unit = { + super.PrepareForDisabled(kickPassengers) //abandon all cargo vehicle.CargoHolds.collect { case (index, hold : Cargo) if hold.isOccupied => val cargo = hold.occupant.get - checkCargoDismount(cargo.GUID, index, iteration = 0, bailed = false) - super.PrepareForDisabled(kickPassengers) + checkCargoDismount(cargo.GUID, index, iteration = 0, bailed = kickPassengers) } } diff --git a/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala b/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala index 651e46f1..81970ff3 100644 --- a/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala +++ b/src/main/scala/net/psforever/objects/vehicles/control/VehicleControl.scala @@ -366,7 +366,7 @@ class VehicleControl(vehicle: Vehicle) //escape being someone else's cargo vehicle.MountedIn match { case Some(_) => - startCargoDismounting(bailed = false) + startCargoDismounting(bailed = true) case _ => ; } if (!vehicle.isFlying || kickPassengers) {