diff options
Diffstat (limited to 'src/server/game/Movement/MovementStructures.h')
-rw-r--r-- | src/server/game/Movement/MovementStructures.h | 2188 |
1 files changed, 35 insertions, 2153 deletions
diff --git a/src/server/game/Movement/MovementStructures.h b/src/server/game/Movement/MovementStructures.h index 3c537376ba0..7269b36c3f2 100644 --- a/src/server/game/Movement/MovementStructures.h +++ b/src/server/game/Movement/MovementStructures.h @@ -91,2170 +91,52 @@ enum MovementStatusElements MSECounter, - // Speed - MSESpeedWalk, - MSESpeedRun, - MSESpeedRunBack, - MSESpeedSwim, - MSESpeedSwimBack, - MSESpeedTurnRate, - MSESpeedFlight, - MSESpeedFlightBack, - MSESpeedPitchRate, - // Special - MSEZeroBit, // writes bit value 1 or skips read bit - MSEOneBit, // writes bit value 0 or skips read bit - MSEEnd, // marks end of parsing + MSEZeroBit, // writes bit value 1 or skips read bit + MSEOneBit, // writes bit value 0 or skips read bit + MSEEnd, // marks end of parsing + MSEExtraElement, // Used to sinalize reading into ExtraMovementStatusElement, element sequence inside it is declared as separate array + // Allowed internal elements are: GUID markers (not transport) and MSEExtraFloat + MSEExtraFloat, MSE_COUNT }; -//4.3.4 -MovementStatusElements PlayerMoveSequence[] = -{ - MSEHasFallData, - MSEHasGuidByte3, - MSEHasGuidByte6, - MSEHasMovementFlags2, - MSEHasSpline, - MSEHasTimestamp, - MSEHasGuidByte0, - MSEHasGuidByte1, - MSEMovementFlags2, - MSEHasGuidByte7, - MSEHasMovementFlags, - MSEHasOrientation, - MSEHasGuidByte2, - MSEHasSplineElevation, - MSEZeroBit, - MSEHasGuidByte4, - MSEHasFallDirection, - MSEHasGuidByte5, - MSEHasTransportData, - MSEMovementFlags, - MSEHasTransportGuidByte3, - MSEHasTransportTime3, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte4, - MSEHasTransportTime2, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte2, - MSEHasPitch, - MSEGuidByte5, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallVerticalSpeed, - MSEFallTime, - MSESplineElevation, - MSEGuidByte7, - MSEPositionY, - MSEGuidByte3, - MSETransportTime3, - MSETransportGuidByte6, - MSETransportSeat, - MSETransportGuidByte5, - MSETransportPositionX, - MSETransportGuidByte1, - MSETransportOrientation, - MSETransportGuidByte2, - MSETransportTime2, - MSETransportGuidByte0, - MSETransportPositionZ, - MSETransportGuidByte7, - MSETransportGuidByte4, - MSETransportGuidByte3, - MSETransportPositionY, - MSETransportTime, - MSEGuidByte4, - MSEPositionX, - MSEGuidByte6, - MSEPositionZ, - MSETimestamp, - MSEGuidByte2, - MSEPitch, - MSEGuidByte0, - MSEOrientation, - MSEGuidByte1, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementFallLandSequence[] = -{ - MSEPositionX, - MSEPositionY, - MSEPositionZ, - MSEHasTransportData, - MSEHasGuidByte7, - MSEHasGuidByte1, - MSEHasMovementFlags2, - MSEHasGuidByte3, - MSEHasSplineElevation, - MSEHasOrientation, - MSEHasGuidByte6, - MSEHasTimestamp, - MSEZeroBit, - MSEHasPitch, - MSEHasGuidByte4, - MSEHasSpline, - MSEHasGuidByte5, - MSEHasMovementFlags, - MSEHasFallData, - MSEHasGuidByte0, - MSEHasGuidByte2, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportTime2, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte7, - MSEMovementFlags2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte1, - MSEGuidByte7, - MSEGuidByte4, - MSEGuidByte3, - MSEGuidByte6, - MSEGuidByte0, - MSEGuidByte2, - MSEGuidByte5, - MSETransportTime, - MSETransportPositionZ, - MSETransportPositionY, - MSETransportPositionX, - MSETransportGuidByte5, - MSETransportTime3, - MSETransportGuidByte1, - MSETransportSeat, - MSETransportTime2, - MSETransportGuidByte4, - MSETransportOrientation, - MSETransportGuidByte0, - MSETransportGuidByte7, - MSETransportGuidByte3, - MSETransportGuidByte6, - MSETransportGuidByte2, - MSEFallVerticalSpeed, - MSEFallTime, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSESplineElevation, - MSETimestamp, - MSEPitch, - MSEOrientation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementHeartBeatSequence[] = -{ - MSEPositionZ, - MSEPositionX, - MSEPositionY, - MSEHasPitch, - MSEHasTimestamp, - MSEHasFallData, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasGuidByte7, - MSEHasGuidByte1, - MSEHasGuidByte0, - MSEHasGuidByte4, - MSEHasGuidByte2, - MSEHasOrientation, - MSEHasGuidByte5, - MSEHasGuidByte3, - MSEHasSplineElevation, - MSEHasSpline, - MSEZeroBit, - MSEHasGuidByte6, - MSEHasMovementFlags, - MSEHasTransportTime3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte2, - MSEHasTransportTime2, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte1, - MSEHasFallDirection, - MSEMovementFlags, - MSEMovementFlags2, - MSEGuidByte3, - MSEGuidByte6, - MSEGuidByte1, - MSEGuidByte7, - MSEGuidByte2, - MSEGuidByte5, - MSEGuidByte0, - MSEGuidByte4, - MSETransportPositionZ, - MSETransportSeat, - MSETransportOrientation, - MSETransportGuidByte4, - MSETransportPositionY, - MSETransportTime, - MSETransportPositionX, - MSETransportGuidByte5, - MSETransportGuidByte1, - MSETransportGuidByte3, - MSETransportGuidByte7, - MSETransportTime3, - MSETransportTime2, - MSETransportGuidByte2, - MSETransportGuidByte0, - MSETransportGuidByte6, - MSEOrientation, - MSEFallVerticalSpeed, - MSEFallTime, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEPitch, - MSESplineElevation, - MSETimestamp, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementJumpSequence[] = -{ - MSEPositionY, - MSEPositionX, - MSEPositionZ, - MSEHasTimestamp, - MSEHasGuidByte5, - MSEHasMovementFlags, - MSEHasGuidByte4, - MSEHasGuidByte6, - MSEHasMovementFlags2, - MSEHasGuidByte0, - MSEHasTransportData, - MSEHasGuidByte3, - MSEHasPitch, - MSEHasGuidByte7, - MSEHasFallData, - MSEHasSpline, - MSEHasOrientation, - MSEHasGuidByte1, - MSEHasSplineElevation, - MSEZeroBit, - MSEHasGuidByte2, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte4, - MSEHasTransportTime3, - MSEHasTransportTime2, - MSEHasTransportGuidByte2, - MSEHasFallDirection, - MSEMovementFlags, - MSEMovementFlags2, - MSEGuidByte6, - MSEGuidByte5, - MSEGuidByte4, - MSEGuidByte0, - MSEGuidByte2, - MSEGuidByte3, - MSEGuidByte7, - MSEGuidByte1, - MSETransportGuidByte1, - MSETransportGuidByte7, - MSETransportPositionX, - MSETransportGuidByte4, - MSETransportTime3, - MSETransportGuidByte0, - MSETransportOrientation, - MSETransportTime2, - MSETransportTime, - MSETransportGuidByte6, - MSETransportPositionZ, - MSETransportSeat, - MSETransportPositionY, - MSETransportGuidByte3, - MSETransportGuidByte2, - MSETransportGuidByte5, - MSEPitch, - MSETimestamp, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallVerticalSpeed, - MSEFallTime, - MSESplineElevation, - MSEOrientation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementSetFacingSequence[] = -{ - MSEPositionX, - MSEPositionY, - MSEPositionZ, - MSEHasGuidByte6, - MSEHasTransportData, - MSEHasGuidByte4, - MSEHasSpline, - MSEHasGuidByte0, - MSEHasOrientation, - MSEHasTimestamp, - MSEHasPitch, - MSEHasMovementFlags2, - MSEHasGuidByte5, - MSEHasGuidByte7, - MSEHasGuidByte2, - MSEHasFallData, - MSEHasSplineElevation, - MSEHasMovementFlags, - MSEHasGuidByte3, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasTransportTime3, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte0, - MSEHasTransportTime2, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte1, - MSEHasFallDirection, - MSEMovementFlags2, - MSEMovementFlags, - MSEGuidByte6, - MSEGuidByte7, - MSEGuidByte2, - MSEGuidByte0, - MSEGuidByte4, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte3, - MSETransportGuidByte0, - MSETransportPositionX, - MSETransportGuidByte1, - MSETransportTime2, - MSETransportGuidByte4, - MSETransportPositionZ, - MSETransportOrientation, - MSETransportGuidByte2, - MSETransportTime3, - MSETransportGuidByte3, - MSETransportSeat, - MSETransportPositionY, - MSETransportGuidByte5, - MSETransportGuidByte6, - MSETransportTime, - MSETransportGuidByte7, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallTime, - MSEFallVerticalSpeed, - MSESplineElevation, - MSEOrientation, - MSETimestamp, - MSEPitch, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementSetPitchSequence[] = -{ - MSEPositionX, - MSEPositionZ, - MSEPositionY, - MSEHasFallData, - MSEHasMovementFlags, - MSEHasGuidByte1, - MSEHasOrientation, - MSEHasGuidByte7, - MSEHasGuidByte3, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasSplineElevation, - MSEHasGuidByte6, - MSEHasPitch, - MSEHasGuidByte4, - MSEHasSpline, - MSEHasGuidByte2, - MSEZeroBit, - MSEHasTimestamp, - MSEHasGuidByte0, - MSEHasGuidByte5, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte5, - MSEHasTransportTime3, - MSEHasTransportGuidByte7, - MSEHasTransportTime2, - MSEMovementFlags2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte3, - MSEGuidByte7, - MSEGuidByte1, - MSEGuidByte6, - MSEGuidByte0, - MSEGuidByte5, - MSEGuidByte2, - MSEGuidByte4, - MSETransportGuidByte4, - MSETransportGuidByte3, - MSETransportGuidByte6, - MSETransportOrientation, - MSETransportGuidByte1, - MSETransportTime3, - MSETransportTime, - MSETransportGuidByte2, - MSETransportPositionZ, - MSETransportGuidByte0, - MSETransportTime2, - MSETransportPositionY, - MSETransportGuidByte5, - MSETransportSeat, - MSETransportGuidByte7, - MSETransportPositionX, - MSEFallVerticalSpeed, - MSEFallTime, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEPitch, - MSESplineElevation, - MSETimestamp, - MSEOrientation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartBackwardSequence[] = -{ - MSEPositionX, - MSEPositionZ, - MSEPositionY, - MSEHasTransportData, - MSEHasGuidByte3, - MSEHasGuidByte0, - MSEHasGuidByte2, - MSEHasTimestamp, - MSEHasGuidByte7, - MSEHasPitch, - MSEZeroBit, - MSEHasMovementFlags, - MSEHasOrientation, - MSEHasSpline, - MSEHasMovementFlags2, - MSEHasFallData, - MSEHasGuidByte5, - MSEHasGuidByte1, - MSEHasGuidByte4, - MSEHasGuidByte6, - MSEHasSplineElevation, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte1, - MSEHasTransportTime2, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte4, - MSEHasTransportTime3, - MSEMovementFlags, - MSEMovementFlags2, - MSEHasFallDirection, - MSEGuidByte6, - MSEGuidByte7, - MSEGuidByte4, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte0, - MSEGuidByte2, - MSEGuidByte3, - MSETransportPositionZ, - MSETransportGuidByte2, - MSETransportTime3, - MSETransportGuidByte0, - MSETransportGuidByte5, - MSETransportPositionY, - MSETransportGuidByte1, - MSETransportPositionX, - MSETransportTime2, - MSETransportGuidByte4, - MSETransportOrientation, - MSETransportSeat, - MSETransportGuidByte7, - MSETransportTime, - MSETransportGuidByte6, - MSETransportGuidByte3, - MSEPitch, - MSETimestamp, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallVerticalSpeed, - MSEFallTime, - MSEOrientation, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartForwardSequence[] = -{ - MSEPositionY, - MSEPositionZ, - MSEPositionX, - MSEHasGuidByte5, - MSEHasGuidByte2, - MSEHasGuidByte0, - MSEZeroBit, - MSEHasMovementFlags, - MSEHasGuidByte7, - MSEHasGuidByte3, - MSEHasGuidByte1, - MSEHasOrientation, - MSEHasGuidByte6, - MSEHasSpline, - MSEHasSplineElevation, - MSEHasGuidByte4, - MSEHasTransportData, - MSEHasTimestamp, - MSEHasPitch, - MSEHasMovementFlags2, - MSEHasFallData, - MSEMovementFlags, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte1, - MSEHasTransportTime3, - MSEHasTransportTime2, - MSEHasFallDirection, - MSEMovementFlags2, - MSEGuidByte2, - MSEGuidByte4, - MSEGuidByte6, - MSEGuidByte1, - MSEGuidByte7, - MSEGuidByte3, - MSEGuidByte5, - MSEGuidByte0, - MSEFallVerticalSpeed, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallTime, - MSETransportGuidByte3, - MSETransportPositionY, - MSETransportPositionZ, - MSETransportGuidByte1, - MSETransportGuidByte4, - MSETransportGuidByte7, - MSETransportOrientation, - MSETransportGuidByte2, - MSETransportPositionX, - MSETransportGuidByte5, - MSETransportTime3, - MSETransportTime, - MSETransportGuidByte6, - MSETransportGuidByte0, - MSETransportSeat, - MSETransportTime2, - MSESplineElevation, - MSEPitch, - MSEOrientation, - MSETimestamp, - - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartStrafeLeftSequence[] = -{ - MSEPositionZ, - MSEPositionX, - MSEPositionY, - MSEHasSplineElevation, - MSEHasGuidByte5, - MSEHasPitch, - MSEHasGuidByte6, - MSEHasTimestamp, - MSEHasGuidByte1, - MSEZeroBit, - MSEHasGuidByte4, - MSEHasGuidByte0, - MSEHasGuidByte2, - MSEHasFallData, - MSEHasOrientation, - MSEHasGuidByte3, - MSEHasMovementFlags2, - MSEHasGuidByte7, - MSEHasSpline, - MSEHasMovementFlags, - MSEHasTransportData, - MSEHasFallDirection, - MSEHasTransportTime2, - MSEHasTransportGuidByte7, - MSEHasTransportTime3, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte0, - MSEMovementFlags, - MSEMovementFlags2, - MSEGuidByte2, - MSEGuidByte6, - MSEGuidByte3, - MSEGuidByte1, - MSEGuidByte0, - MSEGuidByte7, - MSEGuidByte4, - MSEGuidByte5, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallTime, - MSEFallVerticalSpeed, - MSETransportSeat, - MSETransportGuidByte2, - MSETransportTime2, - MSETransportGuidByte3, - MSETransportPositionZ, - MSETransportTime3, - MSETransportGuidByte0, - MSETransportGuidByte7, - MSETransportPositionY, - MSETransportGuidByte5, - MSETransportGuidByte1, - MSETransportOrientation, - MSETransportTime, - MSETransportGuidByte6, - MSETransportGuidByte4, - MSETransportPositionX, - MSETimestamp, - MSEOrientation, - MSEPitch, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartStrafeRightSequence[] = -{ - MSEPositionY, - MSEPositionX, - MSEPositionZ, - MSEHasPitch, - MSEHasGuidByte1, - MSEHasOrientation, - MSEHasGuidByte4, - MSEHasSpline, - MSEZeroBit, - MSEHasGuidByte5, - MSEHasFallData, - MSEHasSplineElevation, - MSEHasTimestamp, - MSEHasMovementFlags, - MSEHasGuidByte2, - MSEHasGuidByte7, - MSEHasGuidByte6, - MSEHasGuidByte3, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasGuidByte0, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte0, - MSEHasTransportTime2, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte4, - MSEHasTransportTime3, - MSEMovementFlags2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte7, - MSEGuidByte5, - MSEGuidByte3, - MSEGuidByte1, - MSEGuidByte2, - MSEGuidByte4, - MSEGuidByte6, - MSEGuidByte0, - MSETransportGuidByte5, - MSETransportGuidByte1, - MSETransportGuidByte6, - MSETransportPositionY, - MSETransportOrientation, - MSETransportGuidByte0, - MSETransportGuidByte2, - MSETransportSeat, - MSETransportPositionX, - MSETransportTime3, - MSETransportTime, - MSETransportGuidByte4, - MSETransportGuidByte7, - MSETransportTime2, - MSETransportPositionZ, - MSETransportGuidByte3, - MSEPitch, - MSEOrientation, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallTime, - MSEFallVerticalSpeed, - MSETimestamp, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartTurnLeftSequence[] = -{ - MSEPositionY, - MSEPositionX, - MSEPositionZ, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasOrientation, - MSEHasSpline, - MSEHasMovementFlags, - MSEHasGuidByte4, - MSEHasGuidByte2, - MSEHasMovementFlags2, - MSEHasGuidByte5, - MSEHasGuidByte7, - MSEHasTransportData, - MSEHasGuidByte6, - MSEHasSplineElevation, - MSEHasGuidByte0, - MSEHasGuidByte3, - MSEHasPitch, - MSEHasTimestamp, - MSEHasFallData, - MSEMovementFlags2, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte0, - MSEHasTransportTime2, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte6, - MSEHasFallDirection, - MSEMovementFlags, - MSEGuidByte0, - MSEGuidByte4, - MSEGuidByte7, - MSEGuidByte5, - MSEGuidByte6, - MSEGuidByte3, - MSEGuidByte2, - MSEGuidByte1, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallVerticalSpeed, - MSEFallTime, - MSETransportGuidByte0, - MSETransportPositionX, - MSETransportTime, - MSETransportSeat, - MSETransportPositionZ, - MSETransportGuidByte4, - MSETransportOrientation, - MSETransportGuidByte2, - MSETransportGuidByte6, - MSETransportGuidByte1, - MSETransportGuidByte3, - MSETransportPositionY, - MSETransportTime3, - MSETransportTime2, - MSETransportGuidByte5, - MSETransportGuidByte7, - MSETimestamp, - MSEPitch, - MSEOrientation, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartTurnRightSequence[] = -{ - MSEPositionX, - MSEPositionZ, - MSEPositionY, - MSEHasGuidByte3, - MSEHasGuidByte5, - MSEHasMovementFlags, - MSEHasSpline, - MSEHasGuidByte0, - MSEHasOrientation, - MSEHasTransportData, - MSEHasGuidByte7, - MSEZeroBit, - MSEHasMovementFlags2, - MSEHasGuidByte1, - MSEHasTimestamp, - MSEHasGuidByte6, - MSEHasGuidByte2, - MSEHasGuidByte4, - MSEHasSplineElevation, - MSEHasPitch, - MSEHasFallData, - MSEHasTransportGuidByte1, - MSEHasTransportTime2, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte7, - MSEHasTransportTime3, - MSEMovementFlags2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte5, - MSEGuidByte0, - MSEGuidByte7, - MSEGuidByte3, - MSEGuidByte2, - MSEGuidByte1, - MSEGuidByte4, - MSEGuidByte6, - MSETransportPositionY, - MSETransportGuidByte0, - MSETransportGuidByte4, - MSETransportGuidByte1, - MSETransportGuidByte6, - MSETransportGuidByte2, - MSETransportSeat, - MSETransportOrientation, - MSETransportGuidByte5, - MSETransportTime3, - MSETransportPositionZ, - MSETransportPositionX, - MSETransportTime, - MSETransportGuidByte7, - MSETransportGuidByte3, - MSETransportTime2, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallTime, - MSEFallVerticalSpeed, - MSEPitch, - MSEOrientation, - MSESplineElevation, - MSETimestamp, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStopSequence[] = -{ - MSEPositionX, - MSEPositionY, - MSEPositionZ, - MSEHasGuidByte3, - MSEHasGuidByte6, - MSEHasSplineElevation, - MSEHasSpline, - MSEHasOrientation, - MSEHasGuidByte7, - MSEHasMovementFlags, - MSEHasGuidByte5, - MSEHasFallData, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasTimestamp, - MSEHasGuidByte4, - MSEHasGuidByte1, - MSEZeroBit, - MSEHasGuidByte2, - MSEHasGuidByte0, - MSEHasPitch, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte5, - MSEHasTransportTime2, - MSEHasTransportTime3, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte2, - MSEMovementFlags, - MSEMovementFlags2, - MSEHasFallDirection, - MSEGuidByte6, - MSEGuidByte3, - MSEGuidByte0, - MSEGuidByte4, - MSEGuidByte2, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte7, - MSETransportGuidByte4, - MSETransportGuidByte7, - MSETransportTime, - MSETransportSeat, - MSETransportPositionZ, - MSETransportTime3, - MSETransportGuidByte2, - MSETransportGuidByte0, - MSETransportPositionY, - MSETransportGuidByte1, - MSETransportGuidByte3, - MSETransportTime2, - MSETransportPositionX, - MSETransportOrientation, - MSETransportGuidByte5, - MSETransportGuidByte6, - MSETimestamp, - MSEOrientation, - MSEPitch, - MSESplineElevation, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallVerticalSpeed, - MSEFallTime, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStopStrafeSequence[] = -{ - MSEPositionY, - MSEPositionZ, - MSEPositionX, - MSEHasPitch, - MSEHasTimestamp, - MSEHasGuidByte2, - MSEHasFallData, - MSEHasGuidByte7, - MSEHasSplineElevation, - MSEHasGuidByte3, - MSEHasOrientation, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasMovementFlags, - MSEHasSpline, - MSEHasGuidByte0, - MSEZeroBit, - MSEHasGuidByte6, - MSEHasGuidByte5, - MSEHasGuidByte1, - MSEHasGuidByte4, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte5, - MSEHasTransportTime2, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte3, - MSEHasTransportTime3, - MSEMovementFlags, - MSEHasFallDirection, - MSEMovementFlags2, - MSEGuidByte2, - MSEGuidByte7, - MSEGuidByte3, - MSEGuidByte4, - MSEGuidByte5, - MSEGuidByte6, - MSEGuidByte1, - MSEGuidByte0, - MSETransportSeat, - MSETransportGuidByte6, - MSETransportPositionZ, - MSETransportTime3, - MSETransportGuidByte1, - MSETransportGuidByte3, - MSETransportGuidByte2, - MSETransportGuidByte4, - MSETransportGuidByte5, - MSETransportTime, - MSETransportOrientation, - MSETransportPositionX, - MSETransportGuidByte0, - MSETransportPositionY, - MSETransportTime2, - MSETransportGuidByte7, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallTime, - MSEFallVerticalSpeed, - MSESplineElevation, - MSEOrientation, - MSEPitch, - MSETimestamp, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStopTurnSequence[] = -{ - MSEPositionX, - MSEPositionZ, - MSEPositionY, - MSEHasGuidByte5, - MSEHasGuidByte4, - MSEHasFallData, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasGuidByte0, - MSEHasSpline, - MSEHasMovementFlags, - MSEHasGuidByte2, - MSEHasGuidByte6, - MSEHasPitch, - MSEHasTransportData, - MSEHasGuidByte3, - MSEHasSplineElevation, - MSEHasTimestamp, - MSEHasMovementFlags2, - MSEHasOrientation, - MSEHasGuidByte7, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte7, - MSEHasTransportTime3, - MSEHasTransportGuidByte4, - MSEHasTransportTime2, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte1, - MSEHasFallDirection, - MSEMovementFlags, - MSEMovementFlags2, - MSEGuidByte3, - MSEGuidByte2, - MSEGuidByte6, - MSEGuidByte4, - MSEGuidByte0, - MSEGuidByte7, - MSEGuidByte1, - MSEGuidByte5, - MSESplineElevation, - MSETransportPositionX, - MSETransportGuidByte5, - MSETransportSeat, - MSETransportGuidByte2, - MSETransportGuidByte3, - MSETransportOrientation, - MSETransportTime2, - MSETransportTime3, - MSETransportGuidByte7, - MSETransportGuidByte1, - MSETransportGuidByte0, - MSETransportGuidByte4, - MSETransportPositionY, - MSETransportPositionZ, - MSETransportTime, - MSETransportGuidByte6, - MSEFallTime, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallVerticalSpeed, - MSETimestamp, - MSEPitch, - MSEOrientation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartAscendSequence[] = -{ - MSEPositionX, - MSEPositionY, - MSEPositionZ, - MSEHasGuidByte0, - MSEHasGuidByte1, - MSEHasGuidByte7, - MSEZeroBit, - MSEHasGuidByte5, - MSEHasTransportData, - MSEHasGuidByte2, - MSEHasSplineElevation, - MSEHasFallData, - MSEHasSpline, - MSEHasGuidByte3, - MSEHasMovementFlags2, - MSEHasGuidByte6, - MSEHasMovementFlags, - MSEHasPitch, - MSEHasTimestamp, - MSEHasOrientation, - MSEHasGuidByte4, - MSEMovementFlags, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte4, - MSEHasTransportTime2, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte7, - MSEMovementFlags2, - MSEHasFallDirection, - MSEGuidByte6, - MSEGuidByte3, - MSEGuidByte1, - MSEGuidByte4, - MSEGuidByte2, - MSEGuidByte0, - MSEGuidByte5, - MSEGuidByte7, - MSETransportGuidByte3, - MSETransportGuidByte5, - MSETransportGuidByte4, - MSETransportSeat, - MSETransportGuidByte2, - MSETransportOrientation, - MSETransportPositionY, - MSETransportGuidByte7, - MSETransportTime2, - MSETransportPositionZ, - MSETransportTime3, - MSETransportGuidByte6, - MSETransportTime, - MSETransportGuidByte0, - MSETransportGuidByte1, - MSETransportPositionX, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallTime, - MSEFallVerticalSpeed, - MSEOrientation, - MSEPitch, - MSETimestamp, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartDescendSequence[] = +namespace Movement { - MSEPositionY, - MSEPositionZ, - MSEPositionX, - MSEHasGuidByte0, - MSEHasPitch, - MSEHasFallData, - MSEHasGuidByte4, - MSEHasOrientation, - MSEHasTimestamp, - MSEHasMovementFlags2, - MSEHasMovementFlags, - MSEHasGuidByte6, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasTransportData, - MSEHasSpline, - MSEHasSplineElevation, - MSEHasGuidByte5, - MSEHasGuidByte3, - MSEHasGuidByte7, - MSEHasGuidByte2, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte6, - MSEHasTransportTime2, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte5, - MSEMovementFlags2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte2, - MSEGuidByte7, - MSEGuidByte6, - MSEGuidByte0, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte4, - MSEGuidByte3, - MSEPitch, - MSETransportPositionZ, - MSETransportSeat, - MSETransportTime3, - MSETransportGuidByte6, - MSETransportTime2, - MSETransportGuidByte1, - MSETransportTime, - MSETransportGuidByte4, - MSETransportPositionY, - MSETransportPositionX, - MSETransportGuidByte7, - MSETransportGuidByte3, - MSETransportGuidByte5, - MSETransportGuidByte2, - MSETransportOrientation, - MSETransportGuidByte0, - MSEFallTime, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallVerticalSpeed, - MSETimestamp, - MSEOrientation, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartSwimSequence[] = -{ - MSEPositionZ, - MSEPositionX, - MSEPositionY, - MSEHasGuidByte3, - MSEHasSplineElevation, - MSEHasGuidByte4, - MSEHasGuidByte7, - MSEZeroBit, - MSEHasPitch, - MSEHasGuidByte0, - MSEHasOrientation, - MSEHasMovementFlags, - MSEHasFallData, - MSEHasGuidByte5, - MSEHasTransportData, - MSEHasMovementFlags2, - MSEHasTimestamp, - MSEHasGuidByte6, - MSEHasGuidByte1, - MSEHasSpline, - MSEHasGuidByte2, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte0, - MSEHasTransportTime2, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte1, - MSEHasTransportTime3, - MSEMovementFlags, - MSEHasFallDirection, - MSEMovementFlags2, - MSEGuidByte0, - MSEGuidByte2, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte4, - MSEGuidByte6, - MSEGuidByte3, - MSEGuidByte7, - MSEPitch, - MSETransportTime2, - MSETransportGuidByte2, - MSETransportPositionY, - MSETransportGuidByte3, - MSETransportTime, - MSETransportPositionX, - MSETransportOrientation, - MSETransportTime3, - MSETransportGuidByte6, - MSETransportGuidByte5, - MSETransportGuidByte4, - MSETransportPositionZ, - MSETransportGuidByte1, - MSETransportGuidByte7, - MSETransportGuidByte0, - MSETransportSeat, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallVerticalSpeed, - MSEFallTime, - MSEOrientation, - MSETimestamp, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStopSwimSequence[] = -{ - MSEPositionX, - MSEPositionY, - MSEPositionZ, - MSEHasSpline, - MSEHasPitch, - MSEHasGuidByte5, - MSEHasGuidByte3, - MSEHasGuidByte7, - MSEHasSplineElevation, - MSEHasMovementFlags, - MSEHasGuidByte4, - MSEHasMovementFlags2, - MSEHasGuidByte2, - MSEHasGuidByte6, - MSEHasTransportData, - MSEHasOrientation, - MSEZeroBit, - MSEHasTimestamp, - MSEHasGuidByte1, - MSEHasGuidByte0, - MSEHasFallData, - MSEHasTransportTime3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte0, - MSEHasTransportTime2, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte5, - MSEMovementFlags, - MSEMovementFlags2, - MSEHasFallDirection, - MSEGuidByte0, - MSEGuidByte4, - MSEGuidByte3, - MSEGuidByte6, - MSEGuidByte7, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte2, - MSETransportTime3, - MSETransportGuidByte4, - MSETransportTime, - MSETransportPositionZ, - MSETransportSeat, - MSETransportGuidByte3, - MSETransportGuidByte2, - MSETransportPositionY, - MSETransportGuidByte7, - MSETransportGuidByte1, - MSETransportGuidByte6, - MSETransportGuidByte5, - MSETransportTime2, - MSETransportPositionX, - MSETransportGuidByte0, - MSETransportOrientation, - MSEFallVerticalSpeed, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallTime, - MSETimestamp, - MSEPitch, - MSEOrientation, - MSESplineElevation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStopAscendSequence[] = -{ - MSEPositionZ, - MSEPositionY, - MSEPositionX, - MSEHasGuidByte3, - MSEHasGuidByte2, - MSEHasFallData, - MSEHasGuidByte7, - MSEHasOrientation, - MSEHasPitch, - MSEHasSpline, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasGuidByte4, - MSEHasMovementFlags, - MSEHasGuidByte0, - MSEHasGuidByte6, - MSEHasSplineElevation, - MSEHasTransportData, - MSEHasMovementFlags2, - MSEHasTimestamp, - MSEHasGuidByte5, - MSEHasTransportTime2, - MSEHasTransportTime3, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte0, - MSEMovementFlags2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte7, - MSEGuidByte5, - MSEGuidByte4, - MSEGuidByte3, - MSEGuidByte2, - MSEGuidByte1, - MSEGuidByte0, - MSEGuidByte6, - MSETransportGuidByte5, - MSETransportPositionY, - MSETransportGuidByte7, - MSETransportGuidByte2, - MSETransportGuidByte6, - MSETransportTime2, - MSETransportTime3, - MSETransportOrientation, - MSETransportGuidByte3, - MSETransportGuidByte4, - MSETransportSeat, - MSETransportGuidByte1, - MSETransportTime, - MSETransportGuidByte0, - MSETransportPositionX, - MSETransportPositionZ, - MSEFallTime, - MSEFallVerticalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEPitch, - MSESplineElevation, - MSETimestamp, - MSEOrientation, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStopPitchSequence[] = -{ - MSEPositionY, - MSEPositionX, - MSEPositionZ, - MSEHasGuidByte0, - MSEHasGuidByte5, - MSEHasGuidByte3, - MSEHasFallData, - MSEHasGuidByte2, - MSEHasGuidByte4, - MSEHasGuidByte7, - MSEHasPitch, - MSEHasSpline, - MSEHasOrientation, - MSEZeroBit, - MSEHasMovementFlags2, - MSEHasSplineElevation, - MSEHasGuidByte6, - MSEHasGuidByte1, - MSEHasTimestamp, - MSEHasTransportData, - MSEHasMovementFlags, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte3, - MSEHasTransportTime2, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte1, - MSEHasFallDirection, - MSEMovementFlags2, - MSEMovementFlags, - MSEGuidByte1, - MSEGuidByte7, - MSEGuidByte0, - MSEGuidByte6, - MSEGuidByte4, - MSEGuidByte3, - MSEGuidByte5, - MSEGuidByte2, - MSETimestamp, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallVerticalSpeed, - MSEFallTime, - MSETransportGuidByte5, - MSETransportGuidByte2, - MSETransportTime2, - MSETransportPositionX, - MSETransportOrientation, - MSETransportGuidByte6, - MSETransportGuidByte3, - MSETransportGuidByte1, - MSETransportPositionZ, - MSETransportTime3, - MSETransportGuidByte0, - MSETransportGuidByte4, - MSETransportTime, - MSETransportPositionY, - MSETransportSeat, - MSETransportGuidByte7, - MSESplineElevation, - MSEOrientation, - MSEPitch, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartPitchDownSequence[] = -{ - MSEPositionX, - MSEPositionZ, - MSEPositionY, - MSEHasMovementFlags, - MSEHasGuidByte7, - MSEHasGuidByte6, - MSEHasPitch, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasGuidByte4, - MSEHasTimestamp, - MSEHasSplineElevation, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasGuidByte0, - MSEHasGuidByte5, - MSEHasGuidByte3, - MSEHasSpline, - MSEHasOrientation, - MSEHasFallData, - MSEHasGuidByte2, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte5, - MSEHasTransportTime3, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte6, - MSEHasTransportTime2, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte2, - MSEMovementFlags2, - MSEHasFallDirection, - MSEMovementFlags, - MSEGuidByte3, - MSEGuidByte7, - MSEGuidByte0, - MSEGuidByte5, - MSEGuidByte2, - MSEGuidByte6, - MSEGuidByte4, - MSEGuidByte1, - MSETransportTime3, - MSETransportGuidByte3, - MSETransportTime2, - MSETransportGuidByte5, - MSETransportGuidByte1, - MSETransportPositionY, - MSETransportGuidByte6, - MSETransportGuidByte4, - MSETransportTime, - MSETransportPositionZ, - MSETransportPositionX, - MSETransportGuidByte0, - MSETransportSeat, - MSETransportGuidByte2, - MSETransportGuidByte7, - MSETransportOrientation, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallVerticalSpeed, - MSEFallTime, - MSEPitch, - MSEOrientation, - MSESplineElevation, - MSETimestamp, - MSEEnd, -}; - -//4.3.4 -MovementStatusElements MovementStartPitchUpSequence[] = -{ - MSEPositionZ, - MSEPositionY, - MSEPositionX, - MSEHasGuidByte4, - MSEHasMovementFlags, - MSEHasMovementFlags2, - MSEHasSpline, - MSEHasGuidByte2, - MSEHasGuidByte6, - MSEHasGuidByte3, - MSEZeroBit, - MSEHasSplineElevation, - MSEHasFallData, - MSEHasGuidByte0, - MSEHasTransportData, - MSEHasGuidByte1, - MSEHasGuidByte5, - MSEHasPitch, - MSEHasTimestamp, - MSEHasOrientation, - MSEHasGuidByte7, - MSEMovementFlags2, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte1, - MSEHasTransportTime2, - MSEHasTransportGuidByte4, - MSEHasTransportTime3, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte2, - MSEMovementFlags, - MSEHasFallDirection, - MSEGuidByte0, - MSEGuidByte3, - MSEGuidByte4, - MSEGuidByte6, - MSEGuidByte7, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte2, - MSETransportPositionX, - MSETransportGuidByte1, - MSETransportGuidByte3, - MSETransportGuidByte2, - MSETransportGuidByte0, - MSETransportTime, - MSETransportPositionZ, - MSETransportOrientation, - MSETransportGuidByte7, - MSETransportTime2, - MSETransportSeat, - MSETransportGuidByte6, - MSETransportGuidByte5, - MSETransportTime3, - MSETransportPositionY, - MSETransportGuidByte4, - MSEFallTime, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallVerticalSpeed, - MSEOrientation, - MSESplineElevation, - MSEPitch, - MSETimestamp, - MSEEnd, -}; - -MovementStatusElements MoveChngTransport[]= -{ - MSEPositionY, - MSEPositionX, - MSEPositionZ, - MSEHasGuidByte4, - MSEHasGuidByte0, - MSEHasGuidByte2, - MSEHasTransportData, - MSEHasSpline, - MSEHasOrientation, - MSEHasGuidByte6, - MSEHasTimestamp, - MSEHasGuidByte5, - MSEHasGuidByte7, - MSEHasPitch, - MSEZeroBit, - MSEHasGuidByte3, - MSEHasSplineElevation, - MSEHasGuidByte1, - MSEHasFallData, - MSEHasMovementFlags, - MSEHasMovementFlags2, - - MSEHasTransportGuidByte3, - MSEHasTransportTime3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte2, - MSEHasTransportTime2, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte5, - - MSEMovementFlags, - MSEMovementFlags2, - MSEHasFallDirection, - - MSEGuidByte7, - MSEGuidByte5, - MSEGuidByte1, - MSEGuidByte2, - MSEGuidByte6, - MSEGuidByte4, - MSEGuidByte0, - MSEGuidByte3, - - MSETransportPositionY, - MSETransportSeat, - MSETransportGuidByte1, - MSETransportGuidByte0, - MSETransportGuidByte2, - MSETransportGuidByte3, - MSETransportGuidByte6, - MSETransportPositionZ, - MSETransportPositionX, - MSETransportTime3, - MSETransportTime, - MSETransportGuidByte7, - MSETransportGuidByte5, - MSETransportGuidByte4, - MSETransportOrientation, - MSETransportTime2, - - MSEFallTime, - MSEFallHorizontalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallVerticalSpeed, - - MSEOrientation, - MSEPitch, - MSESplineElevation, - MSETimestamp, - MSEEnd, -}; - -// 4.3.4 -MovementStatusElements MoveSplineDone[] = -{ - MSEPositionY, - MSEPositionX, - MSEPositionZ, - MSEHasGuidByte6, - MSEHasOrientation, - MSEHasFallData, - MSEHasTimestamp, - MSEHasGuidByte2, - MSEHasSplineElevation, - MSEHasGuidByte4, - MSEHasTransportData, - MSEHasGuidByte3, - MSEHasMovementFlags, - MSEHasGuidByte0, - MSEZeroBit, - MSEHasGuidByte1, - MSEHasGuidByte5, - MSEHasPitch, - MSEHasSpline, - MSEHasMovementFlags2, - MSEHasGuidByte7, - - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte6, - MSEHasTransportTime2, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportGuidByte0, - - MSEHasFallDirection, - MSEMovementFlags2, - MSEMovementFlags, - - MSEGuidByte7, - MSEGuidByte4, - MSEGuidByte5, - MSEGuidByte6, - MSEGuidByte0, - MSEGuidByte1, - MSEGuidByte2, - MSEGuidByte3, - - MSEFallVerticalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallHorizontalSpeed, - MSEFallTime, - - MSEPitch, - MSEOrientation, - - MSETransportGuidByte1, - MSETransportTime3, - MSETransportGuidByte7, - MSETransportTime, - MSETransportPositionY, - MSETransportPositionX, - MSETransportPositionZ, - MSETransportSeat, - MSETransportOrientation, - MSETransportGuidByte0, - MSETransportTime2, - MSETransportGuidByte2, - MSETransportGuidByte3, - MSETransportGuidByte5, - MSETransportGuidByte6, - MSETransportGuidByte4, - - MSETimestamp, - MSESplineElevation, - MSEEnd, -}; - -// 4.3.4 -MovementStatusElements MoveNotActiveMover[] = -{ - MSEPositionZ, - MSEPositionX, - MSEPositionY, - MSEHasMovementFlags2, - MSEHasTransportData, - MSEHasGuidByte6, - MSEHasSplineElevation, - MSEHasGuidByte3, - MSEZeroBit, - MSEHasTimestamp, - MSEHasGuidByte0, - MSEHasOrientation, - MSEHasGuidByte5, - MSEHasPitch, - MSEHasGuidByte1, - MSEHasGuidByte4, - MSEHasGuidByte7, - MSEHasSpline, - MSEHasGuidByte2, - MSEHasFallData, - MSEHasMovementFlags, - - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte2, - MSEHasTransportTime3, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte7, - MSEHasTransportTime2, - MSEHasTransportGuidByte3, - - MSEHasFallDirection, - MSEMovementFlags, - MSEMovementFlags2, - - MSEGuidByte1, - MSEGuidByte0, - MSEGuidByte4, - MSEGuidByte2, - MSEGuidByte7, - MSEGuidByte5, - MSEGuidByte6, - MSEGuidByte3, - - MSEFallVerticalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSEFallTime, - - MSETransportTime3, - MSETransportGuidByte1, - MSETransportTime2, - MSETransportOrientation, - MSETransportGuidByte0, - MSETransportSeat, - MSETransportGuidByte4, - MSETransportGuidByte6, - MSETransportGuidByte3, - MSETransportGuidByte5, - MSETransportPositionY, - MSETransportPositionX, - MSETransportGuidByte2, - MSETransportPositionZ, - MSETransportGuidByte7, - MSETransportTime, - - MSETimestamp, - MSESplineElevation, - MSEPitch, - MSEOrientation, - - MSEEnd, -}; - -// 4.3.4 -MovementStatusElements DismissControlledVehicle[] = -{ - MSEPositionY, - MSEPositionZ, - MSEPositionX, - MSEHasSplineElevation, - MSEHasFallData, - MSEHasTransportData, - MSEHasGuidByte4, - MSEHasGuidByte7, - MSEHasMovementFlags2, - MSEHasGuidByte2, - MSEHasOrientation, - MSEHasGuidByte0, - MSEHasGuidByte6, - MSEHasPitch, - MSEHasTimestamp, - MSEHasGuidByte1, - MSEZeroBit, - MSEHasSpline, - MSEHasGuidByte3, - MSEHasMovementFlags, - MSEHasGuidByte5, - - MSEHasTransportGuidByte5, - MSEHasTransportTime3, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte6, - MSEHasTransportTime2, - - MSEMovementFlags2, - MSEHasFallDirection, - MSEMovementFlags, - - MSEGuidByte6, - MSEGuidByte3, - MSEGuidByte1, - MSEGuidByte5, - MSEGuidByte2, - MSEGuidByte4, - MSEGuidByte7, - MSEGuidByte0, - - MSETimestamp, - - MSETransportTime3, - MSETransportGuidByte4, - MSETransportGuidByte7, - MSETransportTime2, - MSETransportGuidByte6, - MSETransportTime, - MSETransportPositionZ, - MSETransportGuidByte0, - MSETransportPositionX, - MSETransportGuidByte3, - MSETransportSeat, - MSETransportPositionY, - MSETransportOrientation, - MSETransportGuidByte1, - MSETransportGuidByte5, - MSETransportGuidByte2, - - MSEFallTime, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallVerticalSpeed, - - MSEOrientation, - MSESplineElevation, - MSEPitch, - MSEEnd, -}; - -// 4.3.4 -MovementStatusElements MoveUpdateTeleport[] = -{ - MSEPositionZ, - MSEPositionY, - MSEPositionX, - MSEHasOrientation, - - MSEHasSpline, - MSEHasMovementFlags, - MSEHasGuidByte2, - MSEHasGuidByte4, - MSEHasGuidByte6, - MSEHasFallData, - MSEHasGuidByte0, - MSEHasTransportData, - MSEHasGuidByte5, - - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte0, - MSEHasTransportTime2, - MSEHasTransportGuidByte7, - MSEHasTransportGuidByte6, - MSEHasTransportTime3, - MSEHasTransportGuidByte2, - - MSEZeroBit, - - MSEHasGuidByte7, - MSEHasGuidByte3, - MSEHasPitch, - MSEHasMovementFlags2, - MSEHasTimestamp, - - MSEHasFallDirection, - MSEMovementFlags2, - MSEHasSplineElevation, - MSEMovementFlags, - MSEHasGuidByte1, - - MSEGuidByte7, - MSETransportGuidByte3, - MSETransportGuidByte4, - MSETransportOrientation, - MSETransportTime3, - MSETransportGuidByte1, - MSETransportTime2, - MSETransportPositionZ, - MSETransportGuidByte7, - MSETransportGuidByte0, - MSETransportGuidByte6, - MSETransportGuidByte5, - MSETransportGuidByte2, - MSETransportSeat, - MSETransportTime, - MSETransportPositionY, - MSETransportPositionX, - - MSEGuidByte6, - MSEPitch, - MSESplineElevation, - MSEOrientation, - MSEGuidByte2, - MSEGuidByte3, - MSEGuidByte1, + class ExtraMovementStatusElement + { + public: + ExtraMovementStatusElement(MovementStatusElements const* elements) : _elements(elements), _index(0) { } - MSEFallTime, - MSEFallHorizontalSpeed, - MSEFallSinAngle, - MSEFallCosAngle, - MSEFallVerticalSpeed, + void ReadNextElement(ByteBuffer& packet); + void WriteNextElement(ByteBuffer& packet); - MSEGuidByte5, - MSEGuidByte4, - MSETimestamp, - MSEGuidByte0, + struct + { + ObjectGuid guid; + float floatData; + } Data; - MSEEnd, -}; + private: + MovementStatusElements const* _elements; + uint32 _index; + }; -MovementStatusElements* GetMovementStatusElementsSequence(Opcodes opcode) -{ - switch (opcode) + class PacketSender { - case MSG_MOVE_FALL_LAND: - return MovementFallLandSequence; - case MSG_MOVE_HEARTBEAT: - return MovementHeartBeatSequence; - case MSG_MOVE_JUMP: - return MovementJumpSequence; - case MSG_MOVE_SET_FACING: - return MovementSetFacingSequence; - case MSG_MOVE_SET_PITCH: - return MovementSetPitchSequence; - case MSG_MOVE_START_ASCEND: - return MovementStartAscendSequence; - case MSG_MOVE_START_BACKWARD: - return MovementStartBackwardSequence; - case MSG_MOVE_START_DESCEND: - return MovementStartDescendSequence; - case MSG_MOVE_START_FORWARD: - return MovementStartForwardSequence; - case MSG_MOVE_START_PITCH_DOWN: - return MovementStartPitchDownSequence; - case MSG_MOVE_START_PITCH_UP: - return MovementStartPitchUpSequence; - case MSG_MOVE_START_STRAFE_LEFT: - return MovementStartStrafeLeftSequence; - case MSG_MOVE_START_STRAFE_RIGHT: - return MovementStartStrafeRightSequence; - case MSG_MOVE_START_SWIM: - return MovementStartSwimSequence; - case MSG_MOVE_START_TURN_LEFT: - return MovementStartTurnLeftSequence; - case MSG_MOVE_START_TURN_RIGHT: - return MovementStartTurnRightSequence; - case MSG_MOVE_STOP: - return MovementStopSequence; - case MSG_MOVE_STOP_ASCEND: - return MovementStopAscendSequence; - case MSG_MOVE_STOP_PITCH: - return MovementStopPitchSequence; - case MSG_MOVE_STOP_STRAFE: - return MovementStopStrafeSequence; - case MSG_MOVE_STOP_SWIM: - return MovementStopSwimSequence; - case MSG_MOVE_STOP_TURN: - return MovementStopTurnSequence; - case SMSG_PLAYER_MOVE: - return PlayerMoveSequence; - case CMSG_MOVE_CHNG_TRANSPORT: - return MoveChngTransport; - case CMSG_MOVE_SPLINE_DONE: - return MoveSplineDone; - case CMSG_MOVE_NOT_ACTIVE_MOVER: - return MoveNotActiveMover; - case CMSG_DISMISS_CONTROLLED_VEHICLE: - return DismissControlledVehicle; - case MSG_MOVE_UPDATE_TELEPORT: - return MoveUpdateTeleport; - default: - break; - } + public: + PacketSender(Unit* unit, Opcodes serverControl, Opcodes playerControl, Opcodes broadcast = SMSG_PLAYER_MOVE, ExtraMovementStatusElement* extras = NULL); + + void Send() const; - return NULL; + private: + ExtraMovementStatusElement* _extraElements; + Unit* _unit; + Opcodes _selfOpcode; + Opcodes _broadcast; + }; } +MovementStatusElements* GetMovementStatusElementsSequence(Opcodes opcode); + #endif |