aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2011-02-26 12:53:17 +0100
committerShauren <shauren.trinity@gmail.com>2011-02-26 12:53:17 +0100
commit45f91feaa8465df9da136d145c115bc498a8b4c5 (patch)
treecf7e216be514b581db90cb99e3a10ca3c5d472f2 /src
parent7e4456f79d355f27b0a6137c31fd1c0a92e1dc4b (diff)
DB: Fixed startup errors and formatting
Core/Vehicles: Prevent "unprocessed tail data" vehicle packet spam
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Server/Protocol/Handlers/VehicleHandler.cpp40
1 files changed, 23 insertions, 17 deletions
diff --git a/src/server/game/Server/Protocol/Handlers/VehicleHandler.cpp b/src/server/game/Server/Protocol/Handlers/VehicleHandler.cpp
index 296ae23899c..7b84d7baaa3 100644
--- a/src/server/game/Server/Protocol/Handlers/VehicleHandler.cpp
+++ b/src/server/game/Server/Protocol/Handlers/VehicleHandler.cpp
@@ -29,9 +29,9 @@ void WorldSession::HandleDismissControlledVehicle(WorldPacket &recv_data)
uint64 vehicleGUID = _player->GetCharmGUID();
- if (!vehicleGUID) // something wrong here...
+ if (!vehicleGUID) // something wrong here...
{
- recv_data.rpos(recv_data.wpos()); // prevent warnings spam
+ recv_data.rfinish(); // prevent warnings spam
return;
}
@@ -55,11 +55,15 @@ void WorldSession::HandleChangeSeatsOnControlledVehicle(WorldPacket &recv_data)
Unit* vehicle_base = GetPlayer()->GetVehicleBase();
if (!vehicle_base)
+ {
+ recv_data.rfinish(); // prevent warnings spam
return;
+ }
VehicleSeatEntry const* seat = GetPlayer()->GetVehicle()->GetSeatForPassenger(GetPlayer());
if (!seat->CanSwitchFromSeat())
{
+ recv_data.rfinish(); // prevent warnings spam
sLog->outError("HandleChangeSeatsOnControlledVehicle, Opcode: %u, Player %u tried to switch seats but current seatflags %u don't permit that.",
recv_data.GetOpcode(), GetPlayer()->GetGUIDLow(), seat->m_flags);
return;
@@ -67,13 +71,13 @@ void WorldSession::HandleChangeSeatsOnControlledVehicle(WorldPacket &recv_data)
switch (recv_data.GetOpcode())
{
- case CMSG_REQUEST_VEHICLE_PREV_SEAT:
- GetPlayer()->ChangeSeat(-1, false);
- break;
- case CMSG_REQUEST_VEHICLE_NEXT_SEAT:
- GetPlayer()->ChangeSeat(-1, true);
- break;
- case CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE:
+ case CMSG_REQUEST_VEHICLE_PREV_SEAT:
+ GetPlayer()->ChangeSeat(-1, false);
+ break;
+ case CMSG_REQUEST_VEHICLE_NEXT_SEAT:
+ GetPlayer()->ChangeSeat(-1, true);
+ break;
+ case CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE:
{
uint64 guid; // current vehicle guid
recv_data.readPackGUID(guid);
@@ -97,9 +101,9 @@ void WorldSession::HandleChangeSeatsOnControlledVehicle(WorldPacket &recv_data)
if (vehicle->HasEmptySeat(seatId))
GetPlayer()->EnterVehicle(vehicle, seatId);
}
+ break;
}
- break;
- case CMSG_REQUEST_VEHICLE_SWITCH_SEAT:
+ case CMSG_REQUEST_VEHICLE_SWITCH_SEAT:
{
uint64 guid; // current vehicle guid
recv_data.readPackGUID(guid);
@@ -113,10 +117,10 @@ void WorldSession::HandleChangeSeatsOnControlledVehicle(WorldPacket &recv_data)
if (Vehicle *vehicle = vehUnit->GetVehicleKit())
if (vehicle->HasEmptySeat(seatId))
GetPlayer()->EnterVehicle(vehicle, seatId);
+ break;
}
- break;
- default:
- break;
+ default:
+ break;
}
}
@@ -126,14 +130,15 @@ void WorldSession::HandleEnterPlayerVehicle(WorldPacket &data)
uint64 guid;
data >> guid;
- if (Player* pl=ObjectAccessor::FindPlayer(guid))
+ if (Player* pl = ObjectAccessor::FindPlayer(guid))
{
if (!pl->GetVehicleKit())
return;
if (!pl->IsInRaidWith(_player))
return;
- if (!pl->IsWithinDistInMap(_player,INTERACTION_DISTANCE))
+ if (!pl->IsWithinDistInMap(_player, INTERACTION_DISTANCE))
return;
+
_player->EnterVehicle(pl);
}
}
@@ -143,6 +148,7 @@ void WorldSession::HandleEjectPassenger(WorldPacket &data)
Vehicle* vehicle = _player->GetVehicleKit();
if (!vehicle)
{
+ recv_data.rfinish(); // prevent warnings spam
sLog->outError("HandleEjectPassenger: Player %u is not in a vehicle!", GetPlayer()->GetGUIDLow());
return;
}
@@ -219,4 +225,4 @@ void WorldSession::HandleRequestVehicleExit(WorldPacket &recv_data)
GetPlayer()->GetGUIDLow(), seat->m_ID, seat->m_flags);
}
}
-} \ No newline at end of file
+}