mirror of
https://github.com/mangosfour/server.git
synced 2025-12-17 16:37:00 +00:00
MSG_MOVE_FALL_LAND 5.4.8 (18414)
This commit is contained in:
parent
6c8037d531
commit
bf556f6b4d
6 changed files with 55 additions and 49 deletions
|
|
@ -24393,7 +24393,7 @@ void Player::LearnPetTalent(ObjectGuid petGuid, uint32 talentId, uint32 talentRa
|
||||||
|
|
||||||
void Player::UpdateFallInformationIfNeed(MovementInfo const& minfo, uint16 opcode)
|
void Player::UpdateFallInformationIfNeed(MovementInfo const& minfo, uint16 opcode)
|
||||||
{
|
{
|
||||||
if (m_lastFallTime >= minfo.GetFallTime() || m_lastFallZ <= minfo.GetPos()->z || opcode == CMSG_MOVE_FALL_LAND)
|
if (m_lastFallTime >= minfo.GetFallTime() || m_lastFallZ <= minfo.GetPos()->z || opcode == MSG_MOVE_FALL_LAND)
|
||||||
SetFallInformation(minfo.GetFallTime(), minfo.GetPos()->z);
|
SetFallInformation(minfo.GetFallTime(), minfo.GetPos()->z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3328,7 +3328,9 @@ MeleeHitOutcome Unit::RollMeleeOutcomeAgainst(const Unit* pVictim, WeaponAttackT
|
||||||
bool from_behind = !pVictim->HasInArc(M_PI_F, this);
|
bool from_behind = !pVictim->HasInArc(M_PI_F, this);
|
||||||
|
|
||||||
if (from_behind)
|
if (from_behind)
|
||||||
|
{
|
||||||
DEBUG_FILTER_LOG(LOG_FILTER_COMBAT, "RollMeleeOutcomeAgainst: attack came from behind.");
|
DEBUG_FILTER_LOG(LOG_FILTER_COMBAT, "RollMeleeOutcomeAgainst: attack came from behind.");
|
||||||
|
}
|
||||||
|
|
||||||
// Dodge chance
|
// Dodge chance
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -274,7 +274,7 @@ void InitializeOpcodes()
|
||||||
//OPCODE(MSG_MOVE_TELEPORT_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//OPCODE(MSG_MOVE_TELEPORT_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
OPCODE(CMSG_MOVE_TELEPORT_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMoveTeleportAckOpcode );
|
OPCODE(CMSG_MOVE_TELEPORT_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMoveTeleportAckOpcode );
|
||||||
//OPCODE(MSG_MOVE_TOGGLE_FALL_LOGGING, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//OPCODE(MSG_MOVE_TOGGLE_FALL_LOGGING, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
OPCODE(CMSG_MOVE_FALL_LAND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
|
OPCODE(MSG_MOVE_FALL_LAND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
|
||||||
OPCODE(CMSG_MOVE_START_SWIM, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
|
OPCODE(CMSG_MOVE_START_SWIM, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
|
||||||
OPCODE(CMSG_MOVE_STOP_SWIM, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
|
OPCODE(CMSG_MOVE_STOP_SWIM, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
|
||||||
//OPCODE(MSG_MOVE_SET_RUN_SPEED_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//OPCODE(MSG_MOVE_SET_RUN_SPEED_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
|
|
|
||||||
|
|
@ -267,7 +267,7 @@ enum Opcodes
|
||||||
MSG_MOVE_TELEPORT_CHEAT = 0x10C7,
|
MSG_MOVE_TELEPORT_CHEAT = 0x10C7,
|
||||||
CMSG_MOVE_TELEPORT_ACK = 0x390C, // 4.3.4 15595
|
CMSG_MOVE_TELEPORT_ACK = 0x390C, // 4.3.4 15595
|
||||||
MSG_MOVE_TOGGLE_FALL_LOGGING = 0x10C9,
|
MSG_MOVE_TOGGLE_FALL_LOGGING = 0x10C9,
|
||||||
CMSG_MOVE_FALL_LAND = 0x17E9, // 5.4.1 17538
|
MSG_MOVE_FALL_LAND = 0x08FA, // 5.4.8 18414
|
||||||
CMSG_MOVE_START_SWIM = 0x0FC8, // 5.4.1 17538
|
CMSG_MOVE_START_SWIM = 0x0FC8, // 5.4.1 17538
|
||||||
CMSG_MOVE_STOP_SWIM = 0x0FC9, // 5.4.1 17538
|
CMSG_MOVE_STOP_SWIM = 0x0FC9, // 5.4.1 17538
|
||||||
MSG_MOVE_SET_RUN_SPEED_CHEAT = 0x10CD,
|
MSG_MOVE_SET_RUN_SPEED_CHEAT = 0x10CD,
|
||||||
|
|
|
||||||
|
|
@ -345,7 +345,7 @@ void WorldSession::HandleMovementOpcodes(WorldPacket& recv_data)
|
||||||
}
|
}
|
||||||
|
|
||||||
// fall damage generation (ignore in flight case that can be triggered also at lags in moment teleportation to another map).
|
// fall damage generation (ignore in flight case that can be triggered also at lags in moment teleportation to another map).
|
||||||
if (opcode == CMSG_MOVE_FALL_LAND && plMover && !plMover->IsTaxiFlying())
|
if (opcode == MSG_MOVE_FALL_LAND && plMover && !plMover->IsTaxiFlying())
|
||||||
plMover->HandleFall(movementInfo);
|
plMover->HandleFall(movementInfo);
|
||||||
|
|
||||||
/* process position-change */
|
/* process position-change */
|
||||||
|
|
|
||||||
|
|
@ -182,71 +182,75 @@ MovementStatusElements PlayerMoveSequence[] =
|
||||||
|
|
||||||
MovementStatusElements MovementFallLandSequence[] =
|
MovementStatusElements MovementFallLandSequence[] =
|
||||||
{
|
{
|
||||||
MSEPositionX,
|
|
||||||
MSEPositionY,
|
MSEPositionY,
|
||||||
MSEPositionZ,
|
MSEPositionZ,
|
||||||
MSEHasTransportData,
|
MSEPositionX,
|
||||||
MSEGuidBit7,
|
|
||||||
MSEGuidBit1,
|
|
||||||
MSEHasMovementFlags2,
|
|
||||||
MSEGuidBit3,
|
|
||||||
MSEHasSplineElevation,
|
|
||||||
MSEHasOrientation,
|
|
||||||
MSEGuidBit6,
|
|
||||||
MSEHasTimestamp,
|
|
||||||
MSEHasUnknownBit,
|
|
||||||
MSEHasPitch,
|
|
||||||
MSEGuidBit4,
|
|
||||||
MSEHasSpline,
|
|
||||||
MSEGuidBit5,
|
|
||||||
MSEHasMovementFlags,
|
|
||||||
MSEHasFallData,
|
MSEHasFallData,
|
||||||
MSEGuidBit0,
|
MSEHasUnknownBit,
|
||||||
|
MSEHasUnknownBit,
|
||||||
|
MSEHasTimestamp,
|
||||||
|
MSEGuidBit7,
|
||||||
|
MSEHasUnknownBit,
|
||||||
|
MSEHasSplineElevation,
|
||||||
|
MSEGuidBit5,
|
||||||
|
MSEHasPitch,
|
||||||
|
MSEHasMovementFlags2,
|
||||||
MSEGuidBit2,
|
MSEGuidBit2,
|
||||||
|
MSEGuidBit3,
|
||||||
|
MSEGuidBit0,
|
||||||
|
MSEHasOrientation,
|
||||||
|
MSECounterCount,
|
||||||
|
MSEHasMovementFlags,
|
||||||
|
MSEHasUnkTime,
|
||||||
|
MSEGuidBit1,
|
||||||
|
MSEHasTransportData,
|
||||||
|
MSEGuidBit6,
|
||||||
|
MSEGuidBit4,
|
||||||
MSETransportGuidBit0,
|
MSETransportGuidBit0,
|
||||||
MSETransportGuidBit5,
|
|
||||||
MSETransportGuidBit3,
|
|
||||||
MSETransportGuidBit2,
|
|
||||||
MSEHasTransportTime3,
|
|
||||||
MSEHasTransportTime2,
|
MSEHasTransportTime2,
|
||||||
MSETransportGuidBit6,
|
MSETransportGuidBit3,
|
||||||
MSETransportGuidBit4,
|
MSETransportGuidBit5,
|
||||||
MSETransportGuidBit1,
|
MSETransportGuidBit1,
|
||||||
MSETransportGuidBit7,
|
MSETransportGuidBit7,
|
||||||
|
MSETransportGuidBit4,
|
||||||
|
MSETransportGuidBit2,
|
||||||
|
MSETransportGuidBit6,
|
||||||
|
MSEHasTransportTime3,
|
||||||
MSEFlags2,
|
MSEFlags2,
|
||||||
MSEFlags,
|
|
||||||
MSEHasFallDirection,
|
MSEHasFallDirection,
|
||||||
MSEGuidByte1,
|
MSEFlags,
|
||||||
MSEGuidByte7,
|
|
||||||
MSEGuidByte4,
|
MSEGuidByte4,
|
||||||
MSEGuidByte3,
|
MSEGuidByte3,
|
||||||
MSEGuidByte6,
|
MSEGuidByte7,
|
||||||
MSEGuidByte0,
|
MSEGuidByte0,
|
||||||
MSEGuidByte2,
|
MSEGuidByte2,
|
||||||
MSEGuidByte5,
|
MSEGuidByte5,
|
||||||
MSETransportTime,
|
MSEGuidByte1,
|
||||||
MSETransportPositionZ,
|
MSEGuidByte6,
|
||||||
MSETransportPositionY,
|
MSEMovementCounter,
|
||||||
MSETransportPositionX,
|
MSEFallSinAngle,
|
||||||
MSETransportGuidByte5,
|
MSEFallHorizontalSpeed,
|
||||||
MSETransportTime3,
|
MSEFallCosAngle,
|
||||||
MSETransportGuidByte1,
|
MSEFallTime,
|
||||||
MSETransportSeat,
|
MSEFallVerticalSpeed,
|
||||||
MSETransportTime2,
|
|
||||||
MSETransportGuidByte4,
|
MSETransportGuidByte4,
|
||||||
|
MSETransportPositionY,
|
||||||
MSETransportPositionO,
|
MSETransportPositionO,
|
||||||
MSETransportGuidByte0,
|
MSETransportPositionZ,
|
||||||
MSETransportGuidByte7,
|
|
||||||
MSETransportGuidByte3,
|
MSETransportGuidByte3,
|
||||||
MSETransportGuidByte6,
|
MSETransportGuidByte6,
|
||||||
|
MSETransportTime2,
|
||||||
MSETransportGuidByte2,
|
MSETransportGuidByte2,
|
||||||
MSEFallVerticalSpeed,
|
MSETransportGuidByte1,
|
||||||
MSEFallTime,
|
MSETransportGuidByte5,
|
||||||
MSEFallCosAngle,
|
MSETransportTime3,
|
||||||
MSEFallHorizontalSpeed,
|
MSETransportTime,
|
||||||
MSEFallSinAngle,
|
MSETransportPositionX,
|
||||||
MSESplineElevation,
|
MSETransportGuidByte7,
|
||||||
|
MSETransportGuidByte0,
|
||||||
|
MSEUnkTime,
|
||||||
MSETimestamp,
|
MSETimestamp,
|
||||||
|
MSESplineElevation,
|
||||||
MSEPitch,
|
MSEPitch,
|
||||||
MSEPositionO,
|
MSEPositionO,
|
||||||
MSEEnd,
|
MSEEnd,
|
||||||
|
|
@ -2580,7 +2584,7 @@ MovementStatusElements* GetMovementStatusElementsSequence(uint16 opcode)
|
||||||
return MovementCastSpellSequence;
|
return MovementCastSpellSequence;
|
||||||
case CMSG_MOVE_CHNG_TRANSPORT:
|
case CMSG_MOVE_CHNG_TRANSPORT:
|
||||||
return MovementChngTransportSequence;
|
return MovementChngTransportSequence;
|
||||||
case CMSG_MOVE_FALL_LAND:
|
case MSG_MOVE_FALL_LAND:
|
||||||
return MovementFallLandSequence;
|
return MovementFallLandSequence;
|
||||||
case CMSG_MOVE_FALL_RESET:
|
case CMSG_MOVE_FALL_RESET:
|
||||||
return MovementFallResetSequence;
|
return MovementFallResetSequence;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue