diff options
-rwxr-xr-x | src/server/game/Entities/Vehicle/Vehicle.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Entities/Vehicle/Vehicle.cpp b/src/server/game/Entities/Vehicle/Vehicle.cpp index 8b7c3c357f7..37de19522f5 100755 --- a/src/server/game/Entities/Vehicle/Vehicle.cpp +++ b/src/server/game/Entities/Vehicle/Vehicle.cpp @@ -785,6 +785,11 @@ bool VehicleJoinEvent::Execute(uint64, uint32) return true; } + //It's possible that multiple vehicle join + //events are executed in the same update + if (Passenger->GetVehicle()) + Passenger->ExitVehicle(); + Passenger->SetVehicle(Target); Seat->second.Passenger.Guid = Passenger->GetGUID(); Seat->second.Passenger.IsUnselectable = Passenger->HasFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); |