diff options
Diffstat (limited to 'src/game/MovementHandler.cpp')
-rw-r--r-- | src/game/MovementHandler.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/game/MovementHandler.cpp b/src/game/MovementHandler.cpp index 59d0d263227..53aa5923782 100644 --- a/src/game/MovementHandler.cpp +++ b/src/game/MovementHandler.cpp @@ -517,9 +517,12 @@ void WorldSession::HandleChangeSeatsOnControlledVehicle(WorldPacket &recv_data) recv_data >> seatId; if(!guid) - GetPlayer()->ChangeSeat(-1, seatId > 0); + GetPlayer()->ChangeSeat(-1, seatId > 0); // prev/next else if(Vehicle *vehicle = ObjectAccessor::GetVehicle(guid)) - GetPlayer()->EnterVehicle(vehicle, seatId); + { + if(vehicle->HasEmptySeat(seatId)) + GetPlayer()->EnterVehicle(vehicle, seatId); + } } void WorldSession::HandleRequestVehicleExit(WorldPacket &recv_data) |