MSG_MOVE_START_ASCEND/DESCEND/SWIM 5.4.8 18414

This commit is contained in:
zamalaev 2020-02-19 23:25:25 +00:00 committed by Antz
parent a1605728a1
commit 2018857e89
3 changed files with 147 additions and 134 deletions

View file

@ -275,7 +275,7 @@ void InitializeOpcodes()
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(MSG_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(MSG_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 );
OPCODE(SMSG_MOVE_SET_RUN_SPEED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL ); OPCODE(SMSG_MOVE_SET_RUN_SPEED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
@ -944,7 +944,7 @@ void InitializeOpcodes()
OPCODE(CMSG_ARENA_TEAM_LEADER, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleArenaTeamLeaderOpcode ); OPCODE(CMSG_ARENA_TEAM_LEADER, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleArenaTeamLeaderOpcode );
OPCODE(SMSG_ARENA_TEAM_EVENT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); OPCODE(SMSG_ARENA_TEAM_EVENT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_BATTLEMASTER_JOIN_ARENA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleBattlemasterJoinArena ); OPCODE(CMSG_BATTLEMASTER_JOIN_ARENA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleBattlemasterJoinArena );
OPCODE(CMSG_MOVE_START_ASCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes ); OPCODE(MSG_MOVE_START_ASCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
OPCODE(CMSG_MOVE_STOP_ASCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes ); OPCODE(CMSG_MOVE_STOP_ASCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
OPCODE(SMSG_ARENA_TEAM_STATS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); OPCODE(SMSG_ARENA_TEAM_STATS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_LFG_JOIN, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLfgJoinOpcode ); //OPCODE(CMSG_LFG_JOIN, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLfgJoinOpcode );
@ -1022,7 +1022,7 @@ void InitializeOpcodes()
//OPCODE(SMSG_SET_EXTRA_AURA_INFO_OBSOLETE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); //OPCODE(SMSG_SET_EXTRA_AURA_INFO_OBSOLETE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_SET_EXTRA_AURA_INFO_NEED_UPDATE_OBSOLETE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); //OPCODE(SMSG_SET_EXTRA_AURA_INFO_NEED_UPDATE_OBSOLETE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_CLEAR_EXTRA_AURA_INFO_OBSOLETE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); //OPCODE(SMSG_CLEAR_EXTRA_AURA_INFO_OBSOLETE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_MOVE_START_DESCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes ); OPCODE(MSG_MOVE_START_DESCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
//OPCODE(CMSG_IGNORE_REQUIREMENTS_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL ); //OPCODE(CMSG_IGNORE_REQUIREMENTS_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(SMSG_IGNORE_REQUIREMENTS_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); //OPCODE(SMSG_IGNORE_REQUIREMENTS_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_SPELL_CHANCE_PROC_LOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); //OPCODE(SMSG_SPELL_CHANCE_PROC_LOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );

View file

@ -268,7 +268,7 @@ enum Opcodes
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,
MSG_MOVE_FALL_LAND = 0x08FA, // 5.4.8 18414 MSG_MOVE_FALL_LAND = 0x08FA, // 5.4.8 18414
CMSG_MOVE_START_SWIM = 0x0FC8, // 5.4.1 17538 MSG_MOVE_START_SWIM = 0x1858, // 5.4.8 18414
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,
SMSG_MOVE_SET_RUN_SPEED = 0x0758, // 5.3.0 17128 SMSG_MOVE_SET_RUN_SPEED = 0x0758, // 5.3.0 17128
@ -926,7 +926,7 @@ enum Opcodes
CMSG_ARENA_TEAM_LEADER = 0x4204, // 4.3.4 15595 CMSG_ARENA_TEAM_LEADER = 0x4204, // 4.3.4 15595
SMSG_ARENA_TEAM_EVENT = 0x0617, // 4.3.4 15595 SMSG_ARENA_TEAM_EVENT = 0x0617, // 4.3.4 15595
CMSG_BATTLEMASTER_JOIN_ARENA = 0x701C, // 4.3.4 15595 CMSG_BATTLEMASTER_JOIN_ARENA = 0x701C, // 4.3.4 15595
CMSG_MOVE_START_ASCEND = 0x390A, MSG_MOVE_START_ASCEND = 0x11FA, // 5.4.8 18414
CMSG_MOVE_STOP_ASCEND = 0x7B00, // 4.3.4 15595 CMSG_MOVE_STOP_ASCEND = 0x7B00, // 4.3.4 15595
SMSG_ARENA_TEAM_STATS = 0x4425, // 4.3.4 15595 SMSG_ARENA_TEAM_STATS = 0x4425, // 4.3.4 15595
CMSG_LFG_JOIN = 0x2430, // 4.3.4 15595 CMSG_LFG_JOIN = 0x2430, // 4.3.4 15595
@ -1004,7 +1004,7 @@ enum Opcodes
SMSG_SET_EXTRA_AURA_INFO_OBSOLETE = 0x13A5, SMSG_SET_EXTRA_AURA_INFO_OBSOLETE = 0x13A5,
SMSG_SET_EXTRA_AURA_INFO_NEED_UPDATE_OBSOLETE = 0x13A6, SMSG_SET_EXTRA_AURA_INFO_NEED_UPDATE_OBSOLETE = 0x13A6,
SMSG_CLEAR_EXTRA_AURA_INFO_OBSOLETE = 0x13A7, SMSG_CLEAR_EXTRA_AURA_INFO_OBSOLETE = 0x13A7,
CMSG_MOVE_START_DESCEND = 0x3800, // 4.3.4 15595 MSG_MOVE_START_DESCEND = 0x01D1, // 5.4.8 18414
CMSG_IGNORE_REQUIREMENTS_CHEAT = 0x13A9, CMSG_IGNORE_REQUIREMENTS_CHEAT = 0x13A9,
SMSG_IGNORE_REQUIREMENTS_CHEAT = 0x13AA, SMSG_IGNORE_REQUIREMENTS_CHEAT = 0x13AA,
SMSG_SPELL_CHANCE_PROC_LOG = 0x13AB, SMSG_SPELL_CHANCE_PROC_LOG = 0x13AB,

View file

@ -1240,217 +1240,230 @@ MovementStatusElements MovementStopTurnSequence[] =
MovementStatusElements MovementStartAscendSequence[] = MovementStatusElements MovementStartAscendSequence[] =
{ {
MSEPositionX,
MSEPositionY, MSEPositionY,
MSEPositionX,
MSEPositionZ, MSEPositionZ,
MSEHasOrientation,
MSEGuidBit3,
MSEHasTransportData,
MSEHasMovementFlags,
MSEHasUnknownBit,
MSEGuidBit0, MSEGuidBit0,
MSEGuidBit1, MSEGuidBit4,
MSEHasTimestamp,
MSEGuidBit7, MSEGuidBit7,
MSEHasUnknownBit, MSEHasUnknownBit,
MSEHasPitch,
MSEGuidBit5, MSEGuidBit5,
MSEHasTransportData, MSEHasMovementFlags2,
MSEHasUnknownBit,
MSEGuidBit6,
MSEGuidBit2, MSEGuidBit2,
MSEHasUnkTime,
MSECounterCount,
MSEGuidBit1,
MSEHasSplineElevation, MSEHasSplineElevation,
MSEHasFallData, MSEHasFallData,
MSEHasSpline, MSETransportGuidBit4,
MSEGuidBit3,
MSEHasMovementFlags2,
MSEGuidBit6,
MSEHasMovementFlags,
MSEHasPitch,
MSEHasTimestamp,
MSEHasOrientation,
MSEGuidBit4,
MSEFlags,
MSETransportGuidBit0, MSETransportGuidBit0,
MSETransportGuidBit2, MSETransportGuidBit3,
MSETransportGuidBit5,
MSEHasTransportTime2,
MSETransportGuidBit1,
MSEHasTransportTime3, MSEHasTransportTime3,
MSETransportGuidBit6, MSETransportGuidBit6,
MSETransportGuidBit1, MSETransportGuidBit2,
MSETransportGuidBit4,
MSEHasTransportTime2,
MSETransportGuidBit5,
MSETransportGuidBit3,
MSETransportGuidBit7, MSETransportGuidBit7,
MSEFlags2,
MSEHasFallDirection, MSEHasFallDirection,
MSEFlags2,
MSEFlags,
MSEGuidByte2,
MSEGuidByte5,
MSEMovementCounter,
MSEGuidByte1,
MSEGuidByte0,
MSEGuidByte4,
MSEGuidByte7,
MSEGuidByte6, MSEGuidByte6,
MSEGuidByte3, MSEGuidByte3,
MSEGuidByte1, MSEPositionO,
MSEGuidByte4, MSETimestamp,
MSEGuidByte2,
MSEGuidByte0,
MSEGuidByte5,
MSEGuidByte7,
MSETransportGuidByte3, MSETransportGuidByte3,
MSETransportGuidByte5,
MSETransportGuidByte4,
MSETransportSeat,
MSETransportGuidByte2,
MSETransportPositionO,
MSETransportPositionY,
MSETransportGuidByte7,
MSETransportTime2,
MSETransportPositionZ,
MSETransportTime3,
MSETransportGuidByte6,
MSETransportTime, MSETransportTime,
MSETransportGuidByte0, MSETransportPositionY,
MSETransportGuidByte1, MSETransportPositionO,
MSETransportGuidByte6,
MSETransportTime3,
MSETransportPositionX, MSETransportPositionX,
MSEFallCosAngle, MSETransportGuidByte2,
MSETransportTime2,
MSETransportGuidByte1,
MSETransportGuidByte7,
MSETransportPositionZ,
MSETransportSeat,
MSETransportGuidByte0,
MSETransportGuidByte4,
MSETransportGuidByte5,
MSESplineElevation,
MSEFallVerticalSpeed,
MSEFallSinAngle, MSEFallSinAngle,
MSEFallCosAngle,
MSEFallHorizontalSpeed, MSEFallHorizontalSpeed,
MSEFallTime, MSEFallTime,
MSEFallVerticalSpeed,
MSEPositionO,
MSEPitch, MSEPitch,
MSETimestamp, MSEUnkTime,
MSESplineElevation,
MSEEnd, MSEEnd,
}; };
MovementStatusElements MovementStartDescendSequence[] = MovementStatusElements MovementStartDescendSequence[] =
{ {
MSEPositionX,
MSEPositionY, MSEPositionY,
MSEPositionZ, MSEPositionZ,
MSEPositionX,
MSEGuidBit0,
MSEHasPitch,
MSEHasFallData, MSEHasFallData,
MSEGuidBit4,
MSEHasOrientation,
MSEHasTimestamp,
MSEHasMovementFlags2,
MSEHasMovementFlags, MSEHasMovementFlags,
MSEGuidBit6,
MSEHasUnknownBit,
MSEGuidBit1,
MSEHasTransportData,
MSEHasSpline,
MSEHasSplineElevation,
MSEGuidBit5,
MSEGuidBit3,
MSEGuidBit7, MSEGuidBit7,
MSEGuidBit0,
MSEGuidBit4,
MSEHasMovementFlags2,
MSEHasPitch,
MSEGuidBit6,
MSEGuidBit2, MSEGuidBit2,
MSEHasUnknownBit,
MSEHasUnkTime,
MSECounterCount,
MSEHasTransportData,
MSEHasOrientation,
MSEGuidBit1,
MSEHasUnknownBit,
MSEHasUnknownBit,
MSEGuidBit3,
MSEGuidBit5,
MSEHasSplineElevation,
MSEHasTimestamp,
MSETransportGuidBit0, MSETransportGuidBit0,
MSETransportGuidBit1,
MSETransportGuidBit2,
MSEHasTransportTime3, MSEHasTransportTime3,
MSETransportGuidBit7, MSETransportGuidBit7,
MSETransportGuidBit4,
MSETransportGuidBit6,
MSEHasTransportTime2, MSEHasTransportTime2,
MSETransportGuidBit3, MSETransportGuidBit1,
MSETransportGuidBit4,
MSETransportGuidBit5, MSETransportGuidBit5,
MSETransportGuidBit3,
MSETransportGuidBit6,
MSETransportGuidBit2,
MSEFlags2, MSEFlags2,
MSEFlags, MSEFlags,
MSEHasFallDirection, MSEHasFallDirection,
MSEGuidByte2, MSEGuidByte4,
MSEGuidByte7, MSEGuidByte7,
MSEGuidByte1,
MSEGuidByte3,
MSEMovementCounter,
MSEGuidByte2,
MSEGuidByte6, MSEGuidByte6,
MSEGuidByte0, MSEGuidByte0,
MSEGuidByte1,
MSEGuidByte5, MSEGuidByte5,
MSEGuidByte4, MSETransportPositionX,
MSEGuidByte3, MSETransportGuidByte0,
MSEPitch, MSETransportGuidByte3,
MSETransportPositionZ, MSETransportGuidByte7,
MSETransportSeat, MSETransportGuidByte5,
MSETransportTime3,
MSETransportGuidByte6,
MSETransportTime2,
MSETransportGuidByte1, MSETransportGuidByte1,
MSETransportPositionY,
MSETransportTime3,
MSETransportTime, MSETransportTime,
MSETransportGuidByte4, MSETransportGuidByte4,
MSETransportPositionY, MSETransportTime2,
MSETransportPositionX,
MSETransportGuidByte7,
MSETransportGuidByte3,
MSETransportGuidByte5,
MSETransportGuidByte2,
MSETransportPositionO, MSETransportPositionO,
MSETransportGuidByte0, MSETransportPositionZ,
MSETransportGuidByte2,
MSETransportGuidByte6,
MSEFallTime, MSEFallTime,
MSEFallSinAngle,
MSEFallCosAngle, MSEFallCosAngle,
MSEFallHorizontalSpeed, MSEFallHorizontalSpeed,
MSEFallSinAngle,
MSEFallVerticalSpeed, MSEFallVerticalSpeed,
MSETimestamp, MSEPitch,
MSEPositionO, MSEUnkTime,
MSESplineElevation, MSESplineElevation,
MSEPositionO,
MSETimestamp,
MSEEnd, MSEEnd,
}; };
MovementStatusElements MovementStartSwimSequence[] = MovementStatusElements MovementStartSwimSequence[] =
{ {
MSEPositionZ,
MSEPositionX, MSEPositionX,
MSEPositionY, MSEPositionY,
MSEGuidBit3, MSEPositionZ,
MSEHasSplineElevation, MSEHasSplineElevation,
MSEGuidBit4,
MSEGuidBit7,
MSEHasUnknownBit,
MSEHasPitch,
MSEGuidBit0,
MSEHasOrientation,
MSEHasMovementFlags,
MSEHasFallData,
MSEGuidBit5,
MSEHasTransportData, MSEHasTransportData,
MSEGuidBit2,
MSEHasUnknownBit,
MSEHasMovementFlags2, MSEHasMovementFlags2,
MSECounterCount,
MSEHasPitch,
MSEHasTimestamp, MSEHasTimestamp,
MSEGuidBit3,
MSEHasUnknownBit,
MSEGuidBit6, MSEGuidBit6,
MSEGuidBit1, MSEGuidBit1,
MSEHasSpline, MSEHasFallData,
MSEGuidBit2, MSEHasUnkTime,
MSETransportGuidBit2, MSEHasUnknownBit,
MSETransportGuidBit3, MSEGuidBit7,
MSETransportGuidBit7, MSEGuidBit0,
MSETransportGuidBit5, MSEHasOrientation,
MSETransportGuidBit4, MSEGuidBit5,
MSETransportGuidBit0, MSEHasMovementFlags,
MSEGuidBit4,
MSEHasTransportTime2, MSEHasTransportTime2,
MSETransportGuidBit2,
MSETransportGuidBit7,
MSETransportGuidBit6, MSETransportGuidBit6,
MSETransportGuidBit5,
MSETransportGuidBit1, MSETransportGuidBit1,
MSETransportGuidBit4,
MSEHasTransportTime3, MSEHasTransportTime3,
MSETransportGuidBit0,
MSETransportGuidBit3,
MSEFlags, MSEFlags,
MSEHasFallDirection, MSEHasFallDirection,
MSEFlags2, MSEFlags2,
MSEGuidByte0,
MSEGuidByte2,
MSEGuidByte1,
MSEGuidByte5, MSEGuidByte5,
MSEGuidByte4, MSEGuidByte0,
MSEGuidByte6, MSEMovementCounter,
MSEGuidByte3,
MSEGuidByte7, MSEGuidByte7,
MSEPitch, MSEGuidByte3,
MSETransportTime2, MSEGuidByte4,
MSETransportGuidByte2, MSEGuidByte1,
MSETransportPositionY, MSEGuidByte6,
MSEGuidByte2,
MSETransportGuidByte3, MSETransportGuidByte3,
MSETransportTime,
MSETransportPositionX, MSETransportPositionX,
MSETransportPositionO,
MSETransportTime3,
MSETransportGuidByte6,
MSETransportGuidByte5,
MSETransportGuidByte4,
MSETransportPositionZ,
MSETransportGuidByte1,
MSETransportGuidByte7, MSETransportGuidByte7,
MSETransportGuidByte0, MSETransportGuidByte0,
MSETransportSeat, MSETransportPositionY,
MSETransportTime2,
MSETransportGuidByte6,
MSETransportGuidByte4,
MSETransportGuidByte1,
MSETransportGuidByte2,
MSETransportPositionZ,
MSETransportTime,
MSETransportPositionO,
MSETransportTime3,
MSETransportGuidByte5,
MSEFallCosAngle, MSEFallCosAngle,
MSEFallHorizontalSpeed,
MSEFallSinAngle, MSEFallSinAngle,
MSEFallVerticalSpeed, MSEFallHorizontalSpeed,
MSEFallTime, MSEFallTime,
MSEPositionO, MSEFallVerticalSpeed,
MSETimestamp, MSETimestamp,
MSESplineElevation, MSESplineElevation,
MSEPositionO,
MSEUnkTime,
MSEPitch,
MSEEnd, MSEEnd,
}; };
@ -2666,11 +2679,11 @@ MovementStatusElements* GetMovementStatusElementsSequence(uint16 opcode)
return MovementStopStrafeSequence; return MovementStopStrafeSequence;
case MSG_MOVE_STOP_TURN: // 5.4.8 case MSG_MOVE_STOP_TURN: // 5.4.8
return MovementStopTurnSequence; return MovementStopTurnSequence;
case CMSG_MOVE_START_ASCEND: case MSG_MOVE_START_ASCEND: // 5.4.8
return MovementStartAscendSequence; return MovementStartAscendSequence;
case CMSG_MOVE_START_DESCEND: case MSG_MOVE_START_DESCEND:// 5.4.8
return MovementStartDescendSequence; return MovementStartDescendSequence;
case CMSG_MOVE_START_SWIM: case MSG_MOVE_START_SWIM: // 5.4.8
return MovementStartSwimSequence; return MovementStartSwimSequence;
case CMSG_MOVE_STOP_SWIM: case CMSG_MOVE_STOP_SWIM:
return MovementStopSwimSequence; return MovementStopSwimSequence;