aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/server/game/Entities/Vehicle/Vehicle.cpp5
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);