Core/Movement: Fix pushback issues and client freeze.

This commit is contained in:
Machiavelli
2012-04-08 12:17:43 +02:00
parent 1922314858
commit e636531da3
7 changed files with 54 additions and 13 deletions

View File

@@ -17598,26 +17598,35 @@ bool Unit::SetHover(bool enable)
void Unit::SendMovementHover()
{
if (GetTypeId() == TYPEID_PLAYER)
ToPlayer()->SendMovementSetHover(HasUnitMovementFlag(MOVEMENTFLAG_HOVER));
WorldPacket data(MSG_MOVE_HOVER, 64);
data.append(GetPackGUID());
BuildMovementPacket(&data);
SendMessageToSet(&data, true);
SendMessageToSet(&data, false);
}
void Unit::SendMovementWaterWalking()
{
if (GetTypeId() == TYPEID_PLAYER)
ToPlayer()->SendMovementSetWaterWalking(HasUnitMovementFlag(MOVEMENTFLAG_WATERWALKING));
WorldPacket data(MSG_MOVE_WATER_WALK, 64);
data.append(GetPackGUID());
BuildMovementPacket(&data);
SendMessageToSet(&data, true);
SendMessageToSet(&data, false);
}
void Unit::SendMovementFeatherFall()
{
if (GetTypeId() == TYPEID_PLAYER)
ToPlayer()->SendMovementSetFeatherFall(HasUnitMovementFlag(MOVEMENTFLAG_FALLING_SLOW));
WorldPacket data(MSG_MOVE_FEATHER_FALL, 64);
data.append(GetPackGUID());
BuildMovementPacket(&data);
SendMessageToSet(&data, true);
SendMessageToSet(&data, false);
}
void Unit::SendMovementGravityChange()
@@ -17625,7 +17634,7 @@ void Unit::SendMovementGravityChange()
WorldPacket data(MSG_MOVE_GRAVITY_CHNG, 64);
data.append(GetPackGUID());
BuildMovementPacket(&data);
SendMessageToSet(&data, true);
SendMessageToSet(&data, false);
}
void Unit::SendMovementCanFlyChange()
@@ -17650,5 +17659,5 @@ void Unit::SendMovementCanFlyChange()
WorldPacket data(MSG_MOVE_UPDATE_CAN_FLY, 64);
data.append(GetPackGUID());
BuildMovementPacket(&data);
SendMessageToSet(&data, true);
SendMessageToSet(&data, false);
}