/* * Copyright (C) 2008-2014 TrinityCore * Copyright (C) 2005-2009 MaNGOS * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2 of the License, or (at your * option) any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ #include "MovementStructures.h" #include "Player.h" MovementStatusElements const PlayerMove[] = { MSEHasFallData, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasMovementFlags2, MSEHasSpline, MSEHasTimestamp, MSEHasGuidByte0, MSEHasGuidByte1, MSEMovementFlags2, MSEHasGuidByte7, MSEHasMovementFlags, MSEHasOrientation, MSEHasGuidByte2, MSEHasSplineElevation, MSEZeroBit, MSEHasGuidByte4, MSEHasFallDirection, MSEHasGuidByte5, MSEHasTransportData, MSEMovementFlags, MSEHasTransportGuidByte3, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte7, MSEHasTransportGuidByte0, MSEHasTransportGuidByte4, MSEHasTransportPrevTime, MSEHasTransportGuidByte5, MSEHasTransportGuidByte2, MSEHasPitch, MSEGuidByte5, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallVerticalSpeed, MSEFallTime, MSESplineElevation, MSEGuidByte7, MSEPositionY, MSEGuidByte3, MSETransportVehicleId, MSETransportGuidByte6, MSETransportSeat, MSETransportGuidByte5, MSETransportPositionX, MSETransportGuidByte1, MSETransportOrientation, MSETransportGuidByte2, MSETransportPrevTime, MSETransportGuidByte0, MSETransportPositionZ, MSETransportGuidByte7, MSETransportGuidByte4, MSETransportGuidByte3, MSETransportPositionY, MSETransportTime, MSEGuidByte4, MSEPositionX, MSEGuidByte6, MSEPositionZ, MSETimestamp, MSEGuidByte2, MSEPitch, MSEGuidByte0, MSEOrientation, MSEGuidByte1, MSEEnd, }; MovementStatusElements const MovementFallLand[] = { 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, MSEHasTransportVehicleId, MSEHasTransportPrevTime, MSEHasTransportGuidByte6, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEHasTransportGuidByte7, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte1, MSEGuidByte7, MSEGuidByte4, MSEGuidByte3, MSEGuidByte6, MSEGuidByte0, MSEGuidByte2, MSEGuidByte5, MSETransportTime, MSETransportPositionZ, MSETransportPositionY, MSETransportPositionX, MSETransportGuidByte5, MSETransportVehicleId, MSETransportGuidByte1, MSETransportSeat, MSETransportPrevTime, MSETransportGuidByte4, MSETransportOrientation, MSETransportGuidByte0, MSETransportGuidByte7, MSETransportGuidByte3, MSETransportGuidByte6, MSETransportGuidByte2, MSEFallVerticalSpeed, MSEFallTime, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSESplineElevation, MSETimestamp, MSEPitch, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementHeartBeat[] = { MSEPositionZ, MSEPositionX, MSEPositionY, MSEHasPitch, MSEHasTimestamp, MSEHasFallData, MSEHasMovementFlags2, MSEHasTransportData, MSEHasGuidByte7, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasOrientation, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasSplineElevation, MSEHasSpline, MSEZeroBit, MSEHasGuidByte6, MSEHasMovementFlags, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportGuidByte2, MSEHasTransportPrevTime, 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, MSETransportVehicleId, MSETransportPrevTime, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportGuidByte6, MSEOrientation, MSEFallVerticalSpeed, MSEFallTime, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEPitch, MSESplineElevation, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementJump[] = { 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, MSEHasTransportVehicleId, MSEHasTransportPrevTime, MSEHasTransportGuidByte2, MSEHasFallDirection, MSEMovementFlags, MSEMovementFlags2, MSEGuidByte6, MSEGuidByte5, MSEGuidByte4, MSEGuidByte0, MSEGuidByte2, MSEGuidByte3, MSEGuidByte7, MSEGuidByte1, MSETransportGuidByte1, MSETransportGuidByte7, MSETransportPositionX, MSETransportGuidByte4, MSETransportVehicleId, MSETransportGuidByte0, MSETransportOrientation, MSETransportPrevTime, MSETransportTime, MSETransportGuidByte6, MSETransportPositionZ, MSETransportSeat, MSETransportPositionY, MSETransportGuidByte3, MSETransportGuidByte2, MSETransportGuidByte5, MSEPitch, MSETimestamp, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEFallTime, MSESplineElevation, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementSetFacing[] = { MSEPositionX, MSEPositionY, MSEPositionZ, MSEHasGuidByte6, MSEHasTransportData, MSEHasGuidByte4, MSEHasSpline, MSEHasGuidByte0, MSEHasOrientation, MSEHasTimestamp, MSEHasPitch, MSEHasMovementFlags2, MSEHasGuidByte5, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasFallData, MSEHasSplineElevation, MSEHasMovementFlags, MSEHasGuidByte3, MSEZeroBit, MSEHasGuidByte1, MSEHasTransportVehicleId, MSEHasTransportGuidByte3, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEHasTransportGuidByte2, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEHasTransportPrevTime, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte6, MSEGuidByte7, MSEGuidByte2, MSEGuidByte0, MSEGuidByte4, MSEGuidByte1, MSEGuidByte5, MSEGuidByte3, MSETransportGuidByte0, MSETransportPositionX, MSETransportGuidByte1, MSETransportPrevTime, MSETransportGuidByte4, MSETransportPositionZ, MSETransportOrientation, MSETransportGuidByte2, MSETransportVehicleId, MSETransportGuidByte3, MSETransportSeat, MSETransportPositionY, MSETransportGuidByte5, MSETransportGuidByte6, MSETransportTime, MSETransportGuidByte7, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallTime, MSEFallVerticalSpeed, MSESplineElevation, MSEOrientation, MSETimestamp, MSEPitch, MSEEnd, }; MovementStatusElements const MovementSetPitch[] = { 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, MSEHasTransportVehicleId, MSEHasTransportGuidByte7, MSEHasTransportPrevTime, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte3, MSEGuidByte7, MSEGuidByte1, MSEGuidByte6, MSEGuidByte0, MSEGuidByte5, MSEGuidByte2, MSEGuidByte4, MSETransportGuidByte4, MSETransportGuidByte3, MSETransportGuidByte6, MSETransportOrientation, MSETransportGuidByte1, MSETransportVehicleId, MSETransportTime, MSETransportGuidByte2, MSETransportPositionZ, MSETransportGuidByte0, MSETransportPrevTime, MSETransportPositionY, MSETransportGuidByte5, MSETransportSeat, MSETransportGuidByte7, MSETransportPositionX, MSEFallVerticalSpeed, MSEFallTime, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEPitch, MSESplineElevation, MSETimestamp, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementStartBackward[] = { MSEPositionX, MSEPositionZ, MSEPositionY, MSEHasTransportData, MSEHasGuidByte3, MSEHasGuidByte0, MSEHasGuidByte2, MSEHasTimestamp, MSEHasGuidByte7, MSEHasPitch, MSEZeroBit, MSEHasMovementFlags, MSEHasOrientation, MSEHasSpline, MSEHasMovementFlags2, MSEHasFallData, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasSplineElevation, MSEHasTransportGuidByte3, MSEHasTransportGuidByte1, MSEHasTransportPrevTime, MSEHasTransportGuidByte2, MSEHasTransportGuidByte7, MSEHasTransportGuidByte0, MSEHasTransportGuidByte6, MSEHasTransportGuidByte5, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte6, MSEGuidByte7, MSEGuidByte4, MSEGuidByte1, MSEGuidByte5, MSEGuidByte0, MSEGuidByte2, MSEGuidByte3, MSETransportPositionZ, MSETransportGuidByte2, MSETransportVehicleId, MSETransportGuidByte0, MSETransportGuidByte5, MSETransportPositionY, MSETransportGuidByte1, MSETransportPositionX, MSETransportPrevTime, MSETransportGuidByte4, MSETransportOrientation, MSETransportSeat, MSETransportGuidByte7, MSETransportTime, MSETransportGuidByte6, MSETransportGuidByte3, MSEPitch, MSETimestamp, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallVerticalSpeed, MSEFallTime, MSEOrientation, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStartForward[] = { 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, MSEHasTransportVehicleId, MSEHasTransportPrevTime, MSEHasFallDirection, MSEMovementFlags2, MSEGuidByte2, MSEGuidByte4, MSEGuidByte6, MSEGuidByte1, MSEGuidByte7, MSEGuidByte3, MSEGuidByte5, MSEGuidByte0, MSEFallVerticalSpeed, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallTime, MSETransportGuidByte3, MSETransportPositionY, MSETransportPositionZ, MSETransportGuidByte1, MSETransportGuidByte4, MSETransportGuidByte7, MSETransportOrientation, MSETransportGuidByte2, MSETransportPositionX, MSETransportGuidByte5, MSETransportVehicleId, MSETransportTime, MSETransportGuidByte6, MSETransportGuidByte0, MSETransportSeat, MSETransportPrevTime, MSESplineElevation, MSEPitch, MSEOrientation, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementStartStrafeLeft[] = { MSEPositionZ, MSEPositionX, MSEPositionY, MSEHasSplineElevation, MSEHasGuidByte5, MSEHasPitch, MSEHasGuidByte6, MSEHasTimestamp, MSEHasGuidByte1, MSEZeroBit, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte2, MSEHasFallData, MSEHasOrientation, MSEHasGuidByte3, MSEHasMovementFlags2, MSEHasGuidByte7, MSEHasSpline, MSEHasMovementFlags, MSEHasTransportData, MSEHasFallDirection, MSEHasTransportPrevTime, MSEHasTransportGuidByte7, MSEHasTransportVehicleId, MSEHasTransportGuidByte3, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte5, MSEHasTransportGuidByte2, MSEHasTransportGuidByte4, MSEHasTransportGuidByte0, MSEMovementFlags, MSEMovementFlags2, MSEGuidByte2, MSEGuidByte6, MSEGuidByte3, MSEGuidByte1, MSEGuidByte0, MSEGuidByte7, MSEGuidByte4, MSEGuidByte5, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallTime, MSEFallVerticalSpeed, MSETransportSeat, MSETransportGuidByte2, MSETransportPrevTime, MSETransportGuidByte3, MSETransportPositionZ, MSETransportVehicleId, MSETransportGuidByte0, MSETransportGuidByte7, MSETransportPositionY, MSETransportGuidByte5, MSETransportGuidByte1, MSETransportOrientation, MSETransportTime, MSETransportGuidByte6, MSETransportGuidByte4, MSETransportPositionX, MSETimestamp, MSEOrientation, MSEPitch, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStartStrafeRight[] = { 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, MSEHasTransportPrevTime, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte7, MSEGuidByte5, MSEGuidByte3, MSEGuidByte1, MSEGuidByte2, MSEGuidByte4, MSEGuidByte6, MSEGuidByte0, MSETransportGuidByte5, MSETransportGuidByte1, MSETransportGuidByte6, MSETransportPositionY, MSETransportOrientation, MSETransportGuidByte0, MSETransportGuidByte2, MSETransportSeat, MSETransportPositionX, MSETransportVehicleId, MSETransportTime, MSETransportGuidByte4, MSETransportGuidByte7, MSETransportPrevTime, MSETransportPositionZ, MSETransportGuidByte3, MSEPitch, MSEOrientation, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEFallVerticalSpeed, MSETimestamp, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStartTurnLeft[] = { 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, MSEHasTransportPrevTime, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEHasTransportGuidByte6, MSEHasFallDirection, MSEMovementFlags, MSEGuidByte0, MSEGuidByte4, MSEGuidByte7, MSEGuidByte5, MSEGuidByte6, MSEGuidByte3, MSEGuidByte2, MSEGuidByte1, MSEFallCosAngle, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEFallTime, MSETransportGuidByte0, MSETransportPositionX, MSETransportTime, MSETransportSeat, MSETransportPositionZ, MSETransportGuidByte4, MSETransportOrientation, MSETransportGuidByte2, MSETransportGuidByte6, MSETransportGuidByte1, MSETransportGuidByte3, MSETransportPositionY, MSETransportVehicleId, MSETransportPrevTime, MSETransportGuidByte5, MSETransportGuidByte7, MSETimestamp, MSEPitch, MSEOrientation, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStartTurnRight[] = { MSEPositionX, MSEPositionZ, MSEPositionY, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasMovementFlags, MSEHasSpline, MSEHasGuidByte0, MSEHasOrientation, MSEHasTransportData, MSEHasGuidByte7, MSEZeroBit, MSEHasMovementFlags2, MSEHasGuidByte1, MSEHasTimestamp, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasSplineElevation, MSEHasPitch, MSEHasFallData, MSEHasTransportGuidByte1, MSEHasTransportPrevTime, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEHasTransportGuidByte3, MSEHasTransportGuidByte5, MSEHasTransportGuidByte2, MSEHasTransportGuidByte4, MSEHasTransportGuidByte7, MSEHasTransportVehicleId, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte5, MSEGuidByte0, MSEGuidByte7, MSEGuidByte3, MSEGuidByte2, MSEGuidByte1, MSEGuidByte4, MSEGuidByte6, MSETransportPositionY, MSETransportGuidByte0, MSETransportGuidByte4, MSETransportGuidByte1, MSETransportGuidByte6, MSETransportGuidByte2, MSETransportSeat, MSETransportOrientation, MSETransportGuidByte5, MSETransportVehicleId, MSETransportPositionZ, MSETransportPositionX, MSETransportTime, MSETransportGuidByte7, MSETransportGuidByte3, MSETransportPrevTime, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallTime, MSEFallVerticalSpeed, MSEPitch, MSEOrientation, MSESplineElevation, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementStop[] = { 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, MSEHasTransportPrevTime, MSEHasTransportVehicleId, MSEHasTransportGuidByte3, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEHasTransportGuidByte2, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte6, MSEGuidByte3, MSEGuidByte0, MSEGuidByte4, MSEGuidByte2, MSEGuidByte1, MSEGuidByte5, MSEGuidByte7, MSETransportGuidByte4, MSETransportGuidByte7, MSETransportTime, MSETransportSeat, MSETransportPositionZ, MSETransportVehicleId, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportPositionY, MSETransportGuidByte1, MSETransportGuidByte3, MSETransportPrevTime, MSETransportPositionX, MSETransportOrientation, MSETransportGuidByte5, MSETransportGuidByte6, MSETimestamp, MSEOrientation, MSEPitch, MSESplineElevation, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEFallTime, MSEEnd, }; MovementStatusElements const MovementStopStrafe[] = { 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, MSEHasTransportPrevTime, MSEHasTransportGuidByte1, MSEHasTransportGuidByte3, MSEHasTransportVehicleId, MSEMovementFlags, MSEHasFallDirection, MSEMovementFlags2, MSEGuidByte2, MSEGuidByte7, MSEGuidByte3, MSEGuidByte4, MSEGuidByte5, MSEGuidByte6, MSEGuidByte1, MSEGuidByte0, MSETransportSeat, MSETransportGuidByte6, MSETransportPositionZ, MSETransportVehicleId, MSETransportGuidByte1, MSETransportGuidByte3, MSETransportGuidByte2, MSETransportGuidByte4, MSETransportGuidByte5, MSETransportTime, MSETransportOrientation, MSETransportPositionX, MSETransportGuidByte0, MSETransportPositionY, MSETransportPrevTime, MSETransportGuidByte7, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallTime, MSEFallVerticalSpeed, MSESplineElevation, MSEOrientation, MSEPitch, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementStopTurn[] = { MSEPositionX, MSEPositionZ, MSEPositionY, MSEHasGuidByte5, MSEHasGuidByte4, MSEHasFallData, MSEZeroBit, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasSpline, MSEHasMovementFlags, MSEHasGuidByte2, MSEHasGuidByte6, MSEHasPitch, MSEHasTransportData, MSEHasGuidByte3, MSEHasSplineElevation, MSEHasTimestamp, MSEHasMovementFlags2, MSEHasOrientation, MSEHasGuidByte7, MSEHasTransportGuidByte2, MSEHasTransportGuidByte7, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportPrevTime, MSEHasTransportGuidByte5, MSEHasTransportGuidByte0, MSEHasTransportGuidByte3, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasFallDirection, MSEMovementFlags, MSEMovementFlags2, MSEGuidByte3, MSEGuidByte2, MSEGuidByte6, MSEGuidByte4, MSEGuidByte0, MSEGuidByte7, MSEGuidByte1, MSEGuidByte5, MSESplineElevation, MSETransportPositionX, MSETransportGuidByte5, MSETransportSeat, MSETransportGuidByte2, MSETransportGuidByte3, MSETransportOrientation, MSETransportPrevTime, MSETransportVehicleId, MSETransportGuidByte7, MSETransportGuidByte1, MSETransportGuidByte0, MSETransportGuidByte4, MSETransportPositionY, MSETransportPositionZ, MSETransportTime, MSETransportGuidByte6, MSEFallTime, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallVerticalSpeed, MSETimestamp, MSEPitch, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementStartAscend[] = { MSEPositionX, MSEPositionY, MSEPositionZ, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte7, MSEZeroBit, MSEHasGuidByte5, MSEHasTransportData, MSEHasGuidByte2, MSEHasSplineElevation, MSEHasFallData, MSEHasSpline, MSEHasGuidByte3, MSEHasMovementFlags2, MSEHasGuidByte6, MSEHasMovementFlags, MSEHasPitch, MSEHasTimestamp, MSEHasOrientation, MSEHasGuidByte4, MSEMovementFlags, MSEHasTransportGuidByte0, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte4, MSEHasTransportPrevTime, MSEHasTransportGuidByte5, MSEHasTransportGuidByte3, MSEHasTransportGuidByte7, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte6, MSEGuidByte3, MSEGuidByte1, MSEGuidByte4, MSEGuidByte2, MSEGuidByte0, MSEGuidByte5, MSEGuidByte7, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportSeat, MSETransportGuidByte2, MSETransportOrientation, MSETransportPositionY, MSETransportGuidByte7, MSETransportPrevTime, MSETransportPositionZ, MSETransportVehicleId, MSETransportGuidByte6, MSETransportTime, MSETransportGuidByte0, MSETransportGuidByte1, MSETransportPositionX, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEFallVerticalSpeed, MSEOrientation, MSEPitch, MSETimestamp, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStartDescend[] = { MSEPositionY, MSEPositionZ, MSEPositionX, MSEHasGuidByte0, MSEHasPitch, MSEHasFallData, MSEHasGuidByte4, MSEHasOrientation, MSEHasTimestamp, MSEHasMovementFlags2, MSEHasMovementFlags, MSEHasGuidByte6, MSEZeroBit, MSEHasGuidByte1, MSEHasTransportData, MSEHasSpline, MSEHasSplineElevation, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportPrevTime, MSEHasTransportGuidByte3, MSEHasTransportGuidByte5, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte2, MSEGuidByte7, MSEGuidByte6, MSEGuidByte0, MSEGuidByte1, MSEGuidByte5, MSEGuidByte4, MSEGuidByte3, MSEPitch, MSETransportPositionZ, MSETransportSeat, MSETransportVehicleId, MSETransportGuidByte6, MSETransportPrevTime, MSETransportGuidByte1, MSETransportTime, MSETransportGuidByte4, MSETransportPositionY, MSETransportPositionX, MSETransportGuidByte7, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportGuidByte2, MSETransportOrientation, MSETransportGuidByte0, MSEFallTime, MSEFallCosAngle, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSETimestamp, MSEOrientation, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStartSwim[] = { 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, MSEHasTransportPrevTime, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportVehicleId, MSEMovementFlags, MSEHasFallDirection, MSEMovementFlags2, MSEGuidByte0, MSEGuidByte2, MSEGuidByte1, MSEGuidByte5, MSEGuidByte4, MSEGuidByte6, MSEGuidByte3, MSEGuidByte7, MSEPitch, MSETransportPrevTime, MSETransportGuidByte2, MSETransportPositionY, MSETransportGuidByte3, MSETransportTime, MSETransportPositionX, MSETransportOrientation, MSETransportVehicleId, MSETransportGuidByte6, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportPositionZ, MSETransportGuidByte1, MSETransportGuidByte7, MSETransportGuidByte0, MSETransportSeat, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallVerticalSpeed, MSEFallTime, MSEOrientation, MSETimestamp, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStopSwim[] = { MSEPositionX, MSEPositionY, MSEPositionZ, MSEHasSpline, MSEHasPitch, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasSplineElevation, MSEHasMovementFlags, MSEHasGuidByte4, MSEHasMovementFlags2, MSEHasGuidByte2, MSEHasGuidByte6, MSEHasTransportData, MSEHasOrientation, MSEZeroBit, MSEHasTimestamp, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasFallData, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportGuidByte3, MSEHasTransportGuidByte7, MSEHasTransportGuidByte1, MSEHasTransportGuidByte0, MSEHasTransportPrevTime, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte0, MSEGuidByte4, MSEGuidByte3, MSEGuidByte6, MSEGuidByte7, MSEGuidByte1, MSEGuidByte5, MSEGuidByte2, MSETransportVehicleId, MSETransportGuidByte4, MSETransportTime, MSETransportPositionZ, MSETransportSeat, MSETransportGuidByte3, MSETransportGuidByte2, MSETransportPositionY, MSETransportGuidByte7, MSETransportGuidByte1, MSETransportGuidByte6, MSETransportGuidByte5, MSETransportPrevTime, MSETransportPositionX, MSETransportGuidByte0, MSETransportOrientation, MSEFallVerticalSpeed, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallTime, MSETimestamp, MSEPitch, MSEOrientation, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementStopAscend[] = { MSEPositionZ, MSEPositionY, MSEPositionX, MSEHasGuidByte3, MSEHasGuidByte2, MSEHasFallData, MSEHasGuidByte7, MSEHasOrientation, MSEHasPitch, MSEHasSpline, MSEZeroBit, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasMovementFlags, MSEHasGuidByte0, MSEHasGuidByte6, MSEHasSplineElevation, MSEHasTransportData, MSEHasMovementFlags2, MSEHasTimestamp, MSEHasGuidByte5, MSEHasTransportPrevTime, MSEHasTransportVehicleId, MSEHasTransportGuidByte1, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte7, MSEGuidByte5, MSEGuidByte4, MSEGuidByte3, MSEGuidByte2, MSEGuidByte1, MSEGuidByte0, MSEGuidByte6, MSETransportGuidByte5, MSETransportPositionY, MSETransportGuidByte7, MSETransportGuidByte2, MSETransportGuidByte6, MSETransportPrevTime, MSETransportVehicleId, MSETransportOrientation, MSETransportGuidByte3, MSETransportGuidByte4, MSETransportSeat, MSETransportGuidByte1, MSETransportTime, MSETransportGuidByte0, MSETransportPositionX, MSETransportPositionZ, MSEFallTime, MSEFallVerticalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEPitch, MSESplineElevation, MSETimestamp, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementStopPitch[] = { MSEPositionX, MSEPositionZ, MSEPositionY, MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasFallData, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasPitch, MSEHasSpline, MSEHasOrientation, MSEZeroBit, MSEHasMovementFlags2, MSEHasSplineElevation, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasTimestamp, MSEHasTransportData, MSEHasMovementFlags, MSEHasTransportGuidByte7, MSEHasTransportGuidByte0, MSEHasTransportGuidByte5, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportGuidByte3, MSEHasTransportPrevTime, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte1, MSEGuidByte7, MSEGuidByte0, MSEGuidByte6, MSEGuidByte4, MSEGuidByte3, MSEGuidByte5, MSEGuidByte2, MSETimestamp, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallVerticalSpeed, MSEFallTime, MSETransportGuidByte5, MSETransportGuidByte2, MSETransportPrevTime, MSETransportPositionX, MSETransportOrientation, MSETransportGuidByte6, MSETransportGuidByte3, MSETransportGuidByte1, MSETransportPositionZ, MSETransportVehicleId, MSETransportGuidByte0, MSETransportGuidByte4, MSETransportTime, MSETransportPositionY, MSETransportSeat, MSETransportGuidByte7, MSESplineElevation, MSEOrientation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementStartPitchDown[] = { MSEPositionX, MSEPositionZ, MSEPositionY, MSEHasMovementFlags, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasPitch, MSEZeroBit, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasTimestamp, MSEHasSplineElevation, MSEHasMovementFlags2, MSEHasTransportData, MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasSpline, MSEHasOrientation, MSEHasFallData, MSEHasGuidByte2, MSEHasTransportGuidByte1, MSEHasTransportGuidByte5, MSEHasTransportVehicleId, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportPrevTime, MSEHasTransportGuidByte0, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEMovementFlags2, MSEHasFallDirection, MSEMovementFlags, MSEGuidByte3, MSEGuidByte7, MSEGuidByte0, MSEGuidByte5, MSEGuidByte2, MSEGuidByte6, MSEGuidByte4, MSEGuidByte1, MSETransportVehicleId, MSETransportGuidByte3, MSETransportPrevTime, MSETransportGuidByte5, MSETransportGuidByte1, MSETransportPositionY, MSETransportGuidByte6, MSETransportGuidByte4, MSETransportTime, MSETransportPositionZ, MSETransportPositionX, MSETransportGuidByte0, MSETransportSeat, MSETransportGuidByte2, MSETransportGuidByte7, MSETransportOrientation, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallVerticalSpeed, MSEFallTime, MSEPitch, MSEOrientation, MSESplineElevation, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementStartPitchUp[] = { 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, MSEHasTransportPrevTime, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEHasTransportGuidByte0, MSEHasTransportGuidByte6, MSEHasTransportGuidByte5, MSEHasTransportGuidByte2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte0, MSEGuidByte3, MSEGuidByte4, MSEGuidByte6, MSEGuidByte7, MSEGuidByte1, MSEGuidByte5, MSEGuidByte2, MSETransportPositionX, MSETransportGuidByte1, MSETransportGuidByte3, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportTime, MSETransportPositionZ, MSETransportOrientation, MSETransportGuidByte7, MSETransportPrevTime, MSETransportSeat, MSETransportGuidByte6, MSETransportGuidByte5, MSETransportVehicleId, MSETransportPositionY, MSETransportGuidByte4, MSEFallTime, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEOrientation, MSESplineElevation, MSEPitch, MSETimestamp, MSEEnd, }; MovementStatusElements const MoveChngTransport[]= { MSEPositionY, MSEPositionX, MSEPositionZ, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte2, MSEHasTransportData, MSEHasSpline, MSEHasOrientation, MSEHasGuidByte6, MSEHasTimestamp, MSEHasGuidByte5, MSEHasGuidByte7, MSEHasPitch, MSEZeroBit, MSEHasGuidByte3, MSEHasSplineElevation, MSEHasGuidByte1, MSEHasFallData, MSEHasMovementFlags, MSEHasMovementFlags2, MSEHasTransportGuidByte3, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte2, MSEHasTransportPrevTime, MSEHasTransportGuidByte0, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte7, MSEGuidByte5, MSEGuidByte1, MSEGuidByte2, MSEGuidByte6, MSEGuidByte4, MSEGuidByte0, MSEGuidByte3, MSETransportPositionY, MSETransportSeat, MSETransportGuidByte1, MSETransportGuidByte0, MSETransportGuidByte2, MSETransportGuidByte3, MSETransportGuidByte6, MSETransportPositionZ, MSETransportPositionX, MSETransportVehicleId, MSETransportTime, MSETransportGuidByte7, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportOrientation, MSETransportPrevTime, MSEFallTime, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallVerticalSpeed, MSEOrientation, MSEPitch, MSESplineElevation, MSETimestamp, MSEEnd, }; MovementStatusElements const 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, MSEHasTransportPrevTime, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte0, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte7, MSEGuidByte4, MSEGuidByte5, MSEGuidByte6, MSEGuidByte0, MSEGuidByte1, MSEGuidByte2, MSEGuidByte3, MSEFallVerticalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEPitch, MSEOrientation, MSETransportGuidByte1, MSETransportVehicleId, MSETransportGuidByte7, MSETransportTime, MSETransportPositionY, MSETransportPositionX, MSETransportPositionZ, MSETransportSeat, MSETransportOrientation, MSETransportGuidByte0, MSETransportPrevTime, MSETransportGuidByte2, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportGuidByte6, MSETransportGuidByte4, MSETimestamp, MSESplineElevation, MSEEnd, }; MovementStatusElements const 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, MSEHasTransportVehicleId, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEHasTransportPrevTime, MSEHasTransportGuidByte3, MSEHasFallDirection, MSEMovementFlags, MSEMovementFlags2, MSEGuidByte1, MSEGuidByte0, MSEGuidByte4, MSEGuidByte2, MSEGuidByte7, MSEGuidByte5, MSEGuidByte6, MSEGuidByte3, MSEFallVerticalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSETransportVehicleId, MSETransportGuidByte1, MSETransportPrevTime, MSETransportOrientation, MSETransportGuidByte0, MSETransportSeat, MSETransportGuidByte4, MSETransportGuidByte6, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportPositionY, MSETransportPositionX, MSETransportGuidByte2, MSETransportPositionZ, MSETransportGuidByte7, MSETransportTime, MSETimestamp, MSESplineElevation, MSEPitch, MSEOrientation, MSEEnd, }; MovementStatusElements const DismissControlledVehicle[] = { MSEPositionY, MSEPositionZ, MSEPositionX, MSEHasSplineElevation, MSEHasFallData, MSEHasTransportData, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasMovementFlags2, MSEHasGuidByte2, MSEHasOrientation, MSEHasGuidByte0, MSEHasGuidByte6, MSEHasPitch, MSEHasTimestamp, MSEHasGuidByte1, MSEZeroBit, MSEHasSpline, MSEHasGuidByte3, MSEHasMovementFlags, MSEHasGuidByte5, MSEHasTransportGuidByte5, MSEHasTransportVehicleId, MSEHasTransportGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte7, MSEHasTransportGuidByte3, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportPrevTime, MSEMovementFlags2, MSEHasFallDirection, MSEMovementFlags, MSEGuidByte6, MSEGuidByte3, MSEGuidByte1, MSEGuidByte5, MSEGuidByte2, MSEGuidByte4, MSEGuidByte7, MSEGuidByte0, MSETimestamp, MSETransportVehicleId, MSETransportGuidByte4, MSETransportGuidByte7, MSETransportPrevTime, MSETransportGuidByte6, MSETransportTime, MSETransportPositionZ, MSETransportGuidByte0, MSETransportPositionX, MSETransportGuidByte3, MSETransportSeat, MSETransportPositionY, MSETransportOrientation, MSETransportGuidByte1, MSETransportGuidByte5, MSETransportGuidByte2, MSEFallTime, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallVerticalSpeed, MSEOrientation, MSESplineElevation, MSEPitch, MSEEnd, }; MovementStatusElements const MoveUpdateTeleport[] = { MSEPositionZ, MSEPositionY, MSEPositionX, MSEHasOrientation, MSEHasSpline, MSEHasMovementFlags, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasFallData, MSEHasGuidByte0, MSEHasTransportData, MSEHasGuidByte5, MSEHasTransportGuidByte1, MSEHasTransportGuidByte4, MSEHasTransportGuidByte5, MSEHasTransportGuidByte3, MSEHasTransportGuidByte0, MSEHasTransportPrevTime, MSEHasTransportGuidByte7, MSEHasTransportGuidByte6, MSEHasTransportVehicleId, MSEHasTransportGuidByte2, MSEZeroBit, MSEHasGuidByte7, MSEHasGuidByte3, MSEHasPitch, MSEHasMovementFlags2, MSEHasTimestamp, MSEHasFallDirection, MSEMovementFlags2, MSEHasSplineElevation, MSEMovementFlags, MSEHasGuidByte1, MSEGuidByte7, MSETransportGuidByte3, MSETransportGuidByte4, MSETransportOrientation, MSETransportVehicleId, MSETransportGuidByte1, MSETransportPrevTime, MSETransportPositionZ, MSETransportGuidByte7, MSETransportGuidByte0, MSETransportGuidByte6, MSETransportGuidByte5, MSETransportGuidByte2, MSETransportSeat, MSETransportTime, MSETransportPositionY, MSETransportPositionX, MSEGuidByte6, MSEPitch, MSESplineElevation, MSEOrientation, MSEGuidByte2, MSEGuidByte3, MSEGuidByte1, MSEFallTime, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallVerticalSpeed, MSEGuidByte5, MSEGuidByte4, MSETimestamp, MSEGuidByte0, MSEEnd, }; MovementStatusElements const MovementSetRunMode[] = { MSEPositionY, MSEPositionX, MSEPositionZ, MSEHasTimestamp, MSEHasMovementFlags2, MSEHasGuidByte1, MSEHasSpline, MSEHasMovementFlags, MSEHasGuidByte7, MSEHasTransportData, MSEZeroBit, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasSplineElevation, MSEHasGuidByte5, MSEHasPitch, MSEHasGuidByte6, MSEHasGuidByte4, MSEHasFallData, MSEHasOrientation, MSEHasGuidByte2, MSEHasTransportGuidByte6, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEHasTransportGuidByte5, MSEHasTransportGuidByte3, MSEHasTransportGuidByte1, MSEHasTransportPrevTime, MSEHasTransportGuidByte7, MSEHasTransportGuidByte0, MSEHasTransportGuidByte2, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte3, MSEGuidByte6, MSEGuidByte0, MSEGuidByte7, MSEGuidByte4, MSEGuidByte1, MSEGuidByte5, MSEGuidByte2, MSEPitch, MSETransportPrevTime, MSETransportGuidByte3, MSETransportPositionX, MSETransportSeat, MSETransportGuidByte5, MSETransportGuidByte1, MSETransportPositionZ, MSETransportGuidByte2, MSETransportGuidByte7, MSETransportOrientation, MSETransportGuidByte4, MSETransportTime, MSETransportVehicleId, MSETransportGuidByte0, MSETransportPositionY, MSETransportGuidByte6, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallTime, MSEFallVerticalSpeed, MSESplineElevation, MSETimestamp, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementSetWalkMode[] = { MSEPositionY, MSEPositionX, MSEPositionZ, MSEHasGuidByte6, MSEHasSpline, MSEHasTimestamp, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasMovementFlags, MSEHasPitch, MSEHasGuidByte7, MSEHasSplineElevation, MSEHasGuidByte4, MSEHasOrientation, MSEHasTransportData, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasGuidByte3, MSEZeroBit, MSEHasMovementFlags2, MSEHasFallData, MSEHasTransportGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte3, MSEHasTransportPrevTime, MSEHasTransportGuidByte5, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportGuidByte7, MSEHasFallDirection, MSEMovementFlags, MSEMovementFlags2, MSEGuidByte5, MSEGuidByte6, MSEGuidByte4, MSEGuidByte7, MSEGuidByte3, MSEGuidByte0, MSEGuidByte2, MSEGuidByte1, MSETransportGuidByte2, MSETransportGuidByte5, MSETransportSeat, MSETransportPositionZ, MSETransportGuidByte3, MSETransportGuidByte6, MSETransportGuidByte0, MSETransportTime, MSETransportGuidByte4, MSETransportPrevTime, MSETransportOrientation, MSETransportPositionX, MSETransportVehicleId, MSETransportGuidByte7, MSETransportPositionY, MSETransportGuidByte1, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallVerticalSpeed, MSEFallTime, MSESplineElevation, MSEPitch, MSETimestamp, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementSetCanFly[] = { MSEPositionZ, MSEPositionX, MSEPositionY, MSEHasTransportData, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasFallData, MSEHasGuidByte0, MSEHasMovementFlags, MSEHasGuidByte3, MSEHasMovementFlags2, MSEHasGuidByte5, MSEHasTimestamp, MSEHasSplineElevation, MSEHasSpline, MSEHasOrientation, MSEHasGuidByte7, MSEZeroBit, MSEHasPitch, MSEHasTransportGuidByte3, MSEHasTransportPrevTime, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEHasTransportGuidByte1, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEMovementFlags2, MSEHasFallDirection, MSEMovementFlags, MSEGuidByte2, MSEGuidByte0, MSEGuidByte4, MSEGuidByte7, MSEGuidByte5, MSEGuidByte1, MSEGuidByte3, MSEGuidByte6, MSETransportPositionZ, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportSeat, MSETransportPositionX, MSETransportGuidByte2, MSETransportPrevTime, MSETransportPositionY, MSETransportGuidByte1, MSETransportTime, MSETransportGuidByte7, MSETransportGuidByte0, MSETransportOrientation, MSETransportGuidByte6, MSETransportVehicleId, MSESplineElevation, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEFallTime, MSEPitch, MSETimestamp, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementSetCanTransitionBetweenSwimAndFlyAck[] = { MSEPositionZ, MSEPositionY, MSECounter, MSEPositionX, MSEHasGuidByte3, MSEHasOrientation, MSEHasTransportData, MSEHasMovementFlags, MSEHasMovementFlags2, MSEHasSplineElevation, MSEHasTimestamp, MSEHasSpline, MSEZeroBit, MSEHasFallData, MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasPitch, MSEHasGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportGuidByte2, MSEHasTransportPrevTime, MSEHasTransportGuidByte0, MSEHasTransportGuidByte3, MSEHasTransportGuidByte6, MSEHasTransportGuidByte5, MSEHasTransportVehicleId, MSEHasTransportGuidByte7, MSEHasTransportGuidByte1, MSEMovementFlags2, MSEHasFallDirection, MSEMovementFlags, MSEGuidByte3, MSEGuidByte2, MSEGuidByte0, MSEGuidByte4, MSEGuidByte1, MSEGuidByte5, MSEGuidByte7, MSEGuidByte6, MSEFallTime, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallVerticalSpeed, MSETransportPositionY, MSETransportPositionZ, MSETransportGuidByte5, MSETransportGuidByte1, MSETransportGuidByte4, MSETransportTime, MSETransportSeat, MSETransportGuidByte3, MSETransportGuidByte0, MSETransportGuidByte2, MSETransportGuidByte7, MSETransportPositionX, MSETransportPrevTime, MSETransportGuidByte6, MSETransportOrientation, MSETransportVehicleId, MSEPitch, MSEOrientation, MSETimestamp, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementUpdateSwimSpeed[] = { MSEHasMovementFlags, MSEHasGuidByte2, MSEMovementFlags, MSEHasGuidByte3, MSEZeroBit, MSEHasGuidByte7, MSEHasFallDirection, MSEHasTransportGuidByte4, MSEHasTransportGuidByte5, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte7, MSEHasGuidByte6, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasOrientation, MSEHasGuidByte1, MSETransportGuidByte2, MSETransportPositionX, MSETransportGuidByte6, MSETransportOrientation, MSETransportGuidByte0, MSETransportGuidByte4, MSETransportPositionY, MSETransportTime, MSETransportGuidByte1, MSETransportGuidByte7, MSETransportPositionZ, MSETransportSeat, MSETransportGuidByte3, MSETransportGuidByte5, MSEPositionX, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallTime, MSEFallVerticalSpeed, MSEGuidByte7, MSETimestamp, MSEPositionY, MSEPositionZ, MSEExtraElement, MSEGuidByte4, MSEOrientation, MSEGuidByte2, MSEGuidByte3, MSEGuidByte0, MSEGuidByte6, MSEGuidByte1, MSEGuidByte5, MSEPitch, MSEEnd, }; MovementStatusElements const MovementUpdateRunSpeed[] = { MSEPositionZ, MSEPositionX, MSEPositionY, MSEExtraElement, MSEHasGuidByte6, MSEHasMovementFlags2, MSEHasPitch, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasSplineElevation, MSEHasSpline, MSEHasMovementFlags, MSEHasTimestamp, MSEHasGuidByte1, MSEMovementFlags2, MSEHasGuidByte3, MSEMovementFlags, MSEHasGuidByte7, MSEHasGuidByte0, MSEHasOrientation, MSEHasTransportData, MSEHasTransportGuidByte5, MSEHasTransportPrevTime, MSEHasTransportVehicleId, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportGuidByte2, MSEHasTransportGuidByte3, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte0, MSEHasFallData, MSEHasFallDirection, MSEHasGuidByte4, MSEZeroBit, MSETransportGuidByte4, MSETransportGuidByte5, MSETransportPositionX, MSETransportOrientation, MSETransportGuidByte1, MSETransportGuidByte0, MSETransportGuidByte6, MSETransportTime, MSETransportGuidByte7, MSETransportSeat, MSETransportPrevTime, MSETransportPositionY, MSETransportGuidByte3, MSETransportGuidByte2, MSETransportVehicleId, MSETransportPositionZ, MSETimestamp, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallVerticalSpeed, MSEFallTime, MSEPitch, MSEGuidByte6, MSESplineElevation, MSEGuidByte5, MSEGuidByte7, MSEGuidByte4, MSEOrientation, MSEGuidByte0, MSEGuidByte3, MSEGuidByte2, MSEGuidByte1, MSEEnd, }; MovementStatusElements const MovementUpdateFlightSpeed[] = { MSEPositionY, MSEExtraElement, MSEPositionX, MSEPositionZ, MSEHasMovementFlags, MSEHasGuidByte4, MSEZeroBit, MSEHasGuidByte5, MSEHasGuidByte1, MSEMovementFlags, MSEHasGuidByte2, MSEHasOrientation, MSEHasGuidByte7, MSEHasTransportGuidByte3, MSEHasTransportGuidByte5, MSEHasTransportGuidByte1, MSEHasTransportGuidByte0, MSEHasTransportGuidByte6, MSEHasTransportGuidByte4, MSEHasTransportGuidByte2, MSEHasTransportGuidByte7, MSEHasGuidByte6, MSEHasGuidByte3, MSEHasFallDirection, MSEHasGuidByte0, MSEPitch, MSEGuidByte0, MSEGuidByte5, MSETransportOrientation, MSETransportTime, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportGuidByte6, MSETransportPositionZ, MSETransportGuidByte7, MSETransportGuidByte0, MSETransportGuidByte2, MSETransportGuidByte3, MSETransportPositionY, MSETransportGuidByte1, MSETransportSeat, MSETransportPositionX, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallVerticalSpeed, MSEFallTime, MSEGuidByte1, MSEGuidByte6, MSETimestamp, MSEGuidByte7, MSEGuidByte2, MSEGuidByte4, MSEOrientation, MSEGuidByte3, MSEEnd, }; MovementStatusElements const MovementUpdateCollisionHeight[] = { MSEPositionZ, MSEExtraElement, MSEPositionX, MSEPositionY, MSEHasGuidByte6, MSEHasGuidByte7, MSEHasTransportGuidByte6, MSEHasTransportGuidByte4, MSEHasTransportGuidByte3, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEHasTransportGuidByte1, MSEHasTransportGuidByte0, MSEHasTransportGuidByte2, MSEHasGuidByte3, MSEHasOrientation, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasGuidByte0, MSEZeroBit, MSEHasGuidByte2, MSEHasMovementFlags, MSEHasFallDirection, MSEHasGuidByte1, MSEMovementFlags, MSEGuidByte3, MSETransportGuidByte7, MSETransportTime, MSETransportGuidByte4, MSETransportGuidByte5, MSETransportOrientation, MSETransportPositionX, MSETransportGuidByte6, MSETransportGuidByte0, MSETransportPositionY, MSETransportGuidByte2, MSETransportPositionZ, MSETransportGuidByte3, MSETransportGuidByte1, MSETransportSeat, MSEPitch, MSEGuidByte6, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEFallTime, MSEGuidByte7, MSEOrientation, MSEGuidByte0, MSEGuidByte5, MSEGuidByte4, MSETimestamp, MSEGuidByte2, MSEGuidByte1, MSEEnd, }; MovementStatusElements const MovementForceRunSpeedChangeAck[] = { MSECounter, MSEPositionX, MSEExtraElement, MSEPositionZ, MSEPositionY, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte1, MSEHasGuidByte7, MSEHasOrientation, MSEHasFallData, MSEHasGuidByte0, MSEHasSpline, MSEHasTransportData, MSEHasTimestamp, MSEHasMovementFlags2, MSEHasGuidByte6, MSEZeroBit, MSEHasSplineElevation, MSEHasPitch, MSEHasGuidByte5, MSEHasMovementFlags, MSEHasGuidByte3, MSEHasTransportVehicleId, MSEHasTransportGuidByte5, MSEHasTransportPrevTime, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte7, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte4, MSEMovementFlags, MSEHasFallDirection, MSEMovementFlags2, MSEGuidByte6, MSEGuidByte4, MSEGuidByte1, MSEGuidByte3, MSEGuidByte5, MSEGuidByte2, MSEGuidByte7, MSEGuidByte0, MSETransportPositionZ, MSETransportGuidByte6, MSETransportGuidByte1, MSETransportPositionY, MSETransportGuidByte0, MSETransportGuidByte5, MSETransportPrevTime, MSETransportPositionX, MSETransportTime, MSETransportGuidByte7, MSETransportOrientation, MSETransportGuidByte3, MSETransportVehicleId, MSETransportGuidByte2, MSETransportSeat, MSETransportGuidByte4, MSEFallVerticalSpeed, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallTime, MSESplineElevation, MSEPitch, MSETimestamp, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementSetCollisionHeightAck[] = { MSEExtraElement, MSEPositionX, MSEPositionZ, MSECounter, MSEPositionY, MSEHasGuidByte6, MSEHasGuidByte4, MSEZeroBit, MSEZeroBit, MSEHasPitch, MSEHasGuidByte5, MSEZeroBit, MSEHasGuidByte2, MSEHasGuidByte1, MSEHasFallData, MSEHasGuidByte3, MSEHasSpline, MSEHasGuidByte7, MSEHasMovementFlags, MSEHasTransportData, MSEHasTimestamp, MSEHasSplineElevation, MSEHasMovementFlags2, MSEHasOrientation, MSEHasGuidByte0, MSEHasTransportGuidByte4, MSEHasTransportGuidByte3, MSEHasTransportPrevTime, MSEHasTransportVehicleId, MSEHasTransportGuidByte5, MSEHasTransportGuidByte1, MSEHasTransportGuidByte7, MSEHasTransportGuidByte2, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte0, MSEGuidByte3, MSEGuidByte1, MSEGuidByte5, MSEGuidByte7, MSEGuidByte6, MSEGuidByte2, MSEGuidByte4, MSETransportPositionX, MSETransportGuidByte4, MSETransportPrevTime, MSETransportGuidByte0, MSETransportOrientation, MSETransportPositionY, MSETransportGuidByte7, MSETransportSeat, MSETransportGuidByte5, MSETransportGuidByte2, MSETransportTime, MSETransportGuidByte6, MSETransportGuidByte3, MSETransportGuidByte1, MSETransportVehicleId, MSETransportPositionZ, MSEFallVerticalSpeed, MSEFallTime, MSEFallCosAngle, MSEFallSinAngle, MSEFallHorizontalSpeed, MSETimestamp, MSESplineElevation, MSEOrientation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementForceFlightSpeedChangeAck[] = { MSECounter, MSEPositionZ, MSEPositionX, MSEPositionY, MSEExtraElement, MSEHasGuidByte4, MSEHasGuidByte5, MSEZeroBit, MSEHasMovementFlags, MSEHasSplineElevation, MSEHasGuidByte3, MSEHasMovementFlags2, MSEHasGuidByte7, MSEHasTransportData, MSEHasGuidByte0, MSEHasFallData, MSEHasTimestamp, MSEHasPitch, MSEHasSpline, MSEHasOrientation, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte1, MSEHasTransportGuidByte7, MSEHasTransportPrevTime, MSEHasTransportGuidByte0, MSEHasTransportVehicleId, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEHasTransportGuidByte4, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte5, MSEGuidByte6, MSEGuidByte1, MSEGuidByte7, MSEGuidByte3, MSEGuidByte0, MSEGuidByte2, MSEGuidByte4, MSETransportGuidByte6, MSETransportGuidByte0, MSETransportSeat, MSETransportPrevTime, MSETransportOrientation, MSETransportGuidByte1, MSETransportGuidByte5, MSETransportVehicleId, MSETransportGuidByte2, MSETransportPositionZ, MSETransportGuidByte7, MSETransportGuidByte3, MSETransportGuidByte4, MSETransportPositionX, MSETransportTime, MSETransportPositionY, MSETimestamp, MSESplineElevation, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEFallVerticalSpeed, MSEPitch, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementSetCanFlyAck[] = { MSEPositionY, MSECounter, MSEPositionX, MSEPositionZ, MSEHasGuidByte3, MSEHasTimestamp, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasOrientation, MSEHasFallData, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasSplineElevation, MSEHasMovementFlags2, MSEZeroBit, MSEHasGuidByte7, MSEHasSpline, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasMovementFlags, MSEHasTransportData, MSEHasPitch, MSEHasTransportGuidByte3, MSEHasTransportGuidByte1, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportPrevTime, MSEHasTransportGuidByte0, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte1, MSEGuidByte0, MSEGuidByte2, MSEGuidByte3, MSEGuidByte7, MSEGuidByte6, MSEGuidByte4, MSEGuidByte5, MSETransportPrevTime, MSETransportGuidByte6, MSETransportTime, MSETransportVehicleId, MSETransportGuidByte7, MSETransportPositionZ, MSETransportGuidByte3, MSETransportPositionY, MSETransportGuidByte5, MSETransportPositionX, MSETransportGuidByte2, MSETransportOrientation, MSETransportSeat, MSETransportGuidByte1, MSETransportGuidByte0, MSETransportGuidByte4, MSEFallTime, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallVerticalSpeed, MSEPitch, MSEOrientation, MSETimestamp, MSESplineElevation, MSEEnd, }; MovementStatusElements const MovementForceSwimSpeedChangeAck[] = { MSEPositionX, MSECounter, MSEExtraElement, MSEPositionY, MSEPositionZ, MSEHasGuidByte4, MSEHasOrientation, MSEHasPitch, MSEHasTransportData, MSEHasMovementFlags, MSEHasMovementFlags2, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasFallData, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasTimestamp, MSEZeroBit, MSEHasGuidByte5, MSEHasGuidByte6, MSEHasSplineElevation, MSEHasSpline, MSEHasGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte4, MSEHasTransportGuidByte0, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEHasTransportGuidByte3, MSEHasTransportPrevTime, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportGuidByte2, MSEMovementFlags2, MSEHasFallDirection, MSEMovementFlags, MSEGuidByte2, MSEGuidByte0, MSEGuidByte6, MSEGuidByte5, MSEGuidByte1, MSEGuidByte3, MSEGuidByte4, MSEGuidByte7, MSETransportGuidByte0, MSETransportVehicleId, MSETransportPrevTime, MSETransportPositionX, MSETransportGuidByte7, MSETransportSeat, MSETransportPositionY, MSETransportGuidByte5, MSETransportPositionZ, MSETransportOrientation, MSETransportTime, MSETransportGuidByte2, MSETransportGuidByte6, MSETransportGuidByte3, MSETransportGuidByte1, MSETransportGuidByte4, MSEFallTime, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallVerticalSpeed, MSEOrientation, MSEPitch, MSESplineElevation, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementForceWalkSpeedChangeAck[] = { MSEPositionZ, MSEPositionY, MSEExtraElement, MSEPositionX, MSECounter, MSEHasGuidByte0, MSEHasMovementFlags2, MSEHasTimestamp, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasGuidByte2, MSEHasMovementFlags, MSEHasFallData, MSEHasOrientation, MSEHasSpline, MSEZeroBit, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasSplineElevation, MSEHasTransportData, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasPitch, MSEHasTransportPrevTime, MSEHasTransportGuidByte5, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportVehicleId, MSEHasTransportGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte4, MSEHasTransportGuidByte7, MSEHasTransportGuidByte3, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte5, MSEGuidByte6, MSEGuidByte7, MSEGuidByte2, MSEGuidByte1, MSEGuidByte3, MSEGuidByte4, MSEGuidByte0, MSEFallVerticalSpeed, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallTime, MSETransportPositionZ, MSETransportGuidByte7, MSETransportGuidByte5, MSETransportPositionX, MSETransportGuidByte0, MSETransportTime, MSETransportVehicleId, MSETransportPositionY, MSETransportGuidByte2, MSETransportGuidByte4, MSETransportGuidByte1, MSETransportGuidByte3, MSETransportOrientation, MSETransportSeat, MSETransportGuidByte6, MSETransportPrevTime, MSESplineElevation, MSETimestamp, MSEOrientation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementForceRunBackSpeedChangeAck[] = { MSEExtraElement, MSECounter, MSEPositionX, MSEPositionZ, MSEPositionY, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasTimestamp, MSEHasTransportData, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasOrientation, MSEHasFallData, MSEHasMovementFlags2, MSEHasMovementFlags, MSEHasGuidByte7, MSEHasSpline, MSEHasPitch, MSEHasGuidByte6, MSEHasSplineElevation, MSEZeroBit, MSEHasTransportGuidByte3, MSEHasTransportPrevTime, MSEHasTransportGuidByte7, MSEHasTransportGuidByte0, MSEHasTransportGuidByte2, MSEHasTransportGuidByte1, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportGuidByte5, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte0, MSEGuidByte7, MSEGuidByte2, MSEGuidByte4, MSEGuidByte3, MSEGuidByte6, MSEGuidByte5, MSEGuidByte1, MSEFallTime, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallVerticalSpeed, MSETransportGuidByte5, MSETransportSeat, MSETransportGuidByte6, MSETransportGuidByte1, MSETransportGuidByte0, MSETransportGuidByte2, MSETransportPositionY, MSETransportVehicleId, MSETransportPositionX, MSETransportOrientation, MSETransportGuidByte3, MSETransportTime, MSETransportPrevTime, MSETransportGuidByte4, MSETransportPositionZ, MSETransportGuidByte7, MSETimestamp, MSESplineElevation, MSEOrientation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementUpdateRunBackSpeed[] = { MSEHasGuidByte1, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasGuidByte0, MSEZeroBit, MSEHasMovementFlags, MSEHasGuidByte5, MSEHasOrientation, MSEMovementFlags, MSEHasFallDirection, MSEHasTransportGuidByte5, MSEHasTransportGuidByte3, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte7, MSEHasTransportGuidByte2, MSEHasTransportGuidByte4, MSEHasTransportGuidByte0, MSEHasGuidByte7, MSETransportPositionX, MSETransportGuidByte2, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportGuidByte6, MSETransportGuidByte0, MSETransportGuidByte3, MSETransportPositionY, MSETransportGuidByte7, MSETransportPositionZ, MSETransportTime, MSETransportSeat, MSETransportGuidByte1, MSETransportOrientation, MSEGuidByte4, MSEFallTime, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallVerticalSpeed, MSETimestamp, MSEGuidByte1, MSEOrientation, MSEGuidByte0, MSEGuidByte5, MSEGuidByte3, MSEPositionX, MSEPositionY, MSEPitch, MSEGuidByte7, MSEExtraElement, MSEGuidByte2, MSEGuidByte6, MSEPositionZ, MSEEnd, }; MovementStatusElements const MovementUpdateWalkSpeed[] = { MSEHasOrientation, MSEZeroBit, MSEHasGuidByte3, MSEHasGuidByte2, MSEHasTransportGuidByte6, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEHasTransportGuidByte0, MSEHasTransportGuidByte4, MSEHasTransportGuidByte7, MSEHasTransportGuidByte1, MSEHasTransportGuidByte5, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasMovementFlags, MSEHasGuidByte6, MSEHasFallDirection, MSEMovementFlags, MSEHasGuidByte4, MSEPitch, MSETransportGuidByte6, MSETransportGuidByte0, MSETransportGuidByte4, MSETransportGuidByte2, MSETransportPositionX, MSETransportGuidByte7, MSETransportTime, MSETransportPositionZ, MSETransportSeat, MSETransportGuidByte5, MSETransportOrientation, MSETransportGuidByte1, MSETransportPositionY, MSETransportGuidByte3, MSEFallVerticalSpeed, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallTime, MSEGuidByte1, MSEGuidByte4, MSEGuidByte2, MSEGuidByte6, MSEGuidByte7, MSETimestamp, MSEOrientation, MSEPositionY, MSEGuidByte0, MSEPositionZ, MSEPositionX, MSEGuidByte3, MSEGuidByte5, MSEExtraElement, MSEEnd, }; MovementStatusElements const ForceMoveRootAck[] = { MSEPositionY, MSEPositionZ, MSECounter, MSEPositionX, MSEHasGuidByte3, MSEHasTimestamp, MSEHasTransportData, MSEHasPitch, MSEHasGuidByte2, MSEHasOrientation, MSEHasSplineElevation, MSEHasFallData, MSEHasSpline, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte7, MSEHasMovementFlags2, MSEHasMovementFlags, MSEZeroBit, MSEHasGuidByte5, MSEHasTransportGuidByte6, MSEHasTransportGuidByte0, MSEHasTransportGuidByte7, MSEHasTransportGuidByte3, MSEHasTransportGuidByte1, MSEHasTransportGuidByte2, MSEHasTransportPrevTime, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEHasTransportGuidByte5, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte5, MSEGuidByte3, MSEGuidByte1, MSEGuidByte7, MSEGuidByte4, MSEGuidByte0, MSEGuidByte6, MSEGuidByte2, MSETransportGuidByte5, MSETransportGuidByte4, MSETransportOrientation, MSETransportPositionZ, MSETransportVehicleId, MSETransportPrevTime, MSETransportGuidByte7, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportTime, MSETransportGuidByte6, MSETransportGuidByte3, MSETransportPositionX, MSETransportGuidByte1, MSETransportPositionY, MSETransportSeat, MSETimestamp, MSEFallVerticalSpeed, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallTime, MSEOrientation, MSESplineElevation, MSEPitch, MSEEnd, }; MovementStatusElements const ForceMoveUnrootAck[] = { MSECounter, MSEPositionZ, MSEPositionY, MSEPositionX, MSEHasGuidByte7, MSEHasSplineElevation, MSEHasSpline, MSEHasGuidByte5, MSEHasGuidByte4, MSEZeroBit, MSEHasTimestamp, MSEHasMovementFlags, MSEHasOrientation, MSEHasPitch, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasTransportData, MSEHasMovementFlags2, MSEHasGuidByte2, MSEHasGuidByte0, MSEHasFallData, MSEHasGuidByte6, MSEHasFallDirection, MSEHasTransportGuidByte0, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportPrevTime, MSEHasTransportGuidByte3, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEHasTransportGuidByte2, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte7, MSEGuidByte1, MSEGuidByte0, MSEGuidByte6, MSEGuidByte2, MSEGuidByte4, MSEGuidByte5, MSEGuidByte3, MSETransportGuidByte6, MSETransportPositionZ, MSETransportGuidByte2, MSETransportGuidByte3, MSETransportPositionY, MSETransportVehicleId, MSETransportGuidByte5, MSETransportSeat, MSETransportGuidByte0, MSETransportTime, MSETransportPrevTime, MSETransportGuidByte4, MSETransportOrientation, MSETransportPositionX, MSETransportGuidByte1, MSETransportGuidByte7, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallVerticalSpeed, MSEFallTime, MSETimestamp, MSESplineElevation, MSEOrientation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementFallReset[] = { MSEPositionZ, MSEPositionX, MSEPositionY, MSEHasGuidByte1, MSEHasTimestamp, MSEHasMovementFlags, MSEZeroBit, MSEHasGuidByte6, MSEHasSplineElevation, MSEHasPitch, MSEHasGuidByte3, MSEHasTransportData, MSEHasGuidByte2, MSEHasMovementFlags2, MSEHasOrientation, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasSpline, MSEHasGuidByte7, MSEHasGuidByte0, MSEHasFallData, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte5, MSEHasTransportGuidByte4, MSEHasTransportPrevTime, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportGuidByte7, MSEHasTransportGuidByte3, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte4, MSEGuidByte0, MSEGuidByte1, MSEGuidByte7, MSEGuidByte5, MSEGuidByte2, MSEGuidByte3, MSEGuidByte6, MSETransportPositionX, MSETransportGuidByte7, MSETransportGuidByte2, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportPositionY, MSETransportPositionZ, MSETransportSeat, MSETransportPrevTime, MSETransportGuidByte6, MSETransportVehicleId, MSETransportTime, MSETransportGuidByte0, MSETransportOrientation, MSETransportGuidByte4, MSETransportGuidByte1, MSEFallVerticalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEOrientation, MSETimestamp, MSESplineElevation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementFeatherFallAck[] = { MSEPositionZ, MSECounter, MSEPositionY, MSEPositionX, MSEZeroBit, MSEHasGuidByte3, MSEHasSplineElevation, MSEHasGuidByte1, MSEHasPitch, MSEHasGuidByte2, MSEHasSpline, MSEHasTimestamp, MSEHasGuidByte5, MSEHasFallData, MSEHasOrientation, MSEHasTransportData, MSEHasGuidByte7, MSEHasMovementFlags2, MSEHasGuidByte6, MSEHasMovementFlags, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportVehicleId, MSEHasTransportGuidByte2, MSEHasTransportGuidByte4, MSEHasTransportGuidByte7, MSEHasTransportGuidByte3, MSEHasTransportGuidByte5, MSEHasTransportPrevTime, MSEHasTransportGuidByte1, MSEHasTransportGuidByte0, MSEHasFallDirection, MSEMovementFlags2, MSEMovementFlags, MSEGuidByte6, MSEGuidByte1, MSEGuidByte7, MSEGuidByte0, MSEGuidByte5, MSEGuidByte4, MSEGuidByte3, MSEGuidByte2, MSETransportVehicleId, MSETransportOrientation, MSETransportPositionZ, MSETransportGuidByte7, MSETransportGuidByte5, MSETransportGuidByte2, MSETransportPositionX, MSETransportGuidByte1, MSETransportGuidByte6, MSETransportPrevTime, MSETransportTime, MSETransportPositionY, MSETransportGuidByte4, MSETransportGuidByte0, MSETransportSeat, MSETransportGuidByte3, MSETimestamp, MSESplineElevation, MSEOrientation, MSEFallVerticalSpeed, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallTime, MSEPitch, MSEEnd, }; MovementStatusElements const MovementGravityDisableAck[] = { MSEPositionZ, MSEPositionY, MSECounter, MSEPositionX, MSEHasGuidByte3, MSEHasTransportData, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasMovementFlags, MSEHasOrientation, MSEHasSpline, MSEHasGuidByte6, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasSplineElevation, MSEHasTimestamp, MSEHasPitch, MSEHasMovementFlags2, MSEZeroBit, MSEHasGuidByte2, MSEHasFallData, MSEHasGuidByte1, MSEHasTransportGuidByte2, MSEHasTransportVehicleId, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte5, MSEHasTransportGuidByte3, MSEHasTransportGuidByte7, MSEHasTransportGuidByte6, MSEHasTransportGuidByte4, MSEHasTransportPrevTime, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte0, MSEGuidByte2, MSEGuidByte1, MSEGuidByte3, MSEGuidByte5, MSEGuidByte7, MSEGuidByte4, MSEGuidByte6, MSETransportPositionZ, MSETransportGuidByte2, MSETransportGuidByte5, MSETransportGuidByte3, MSETransportGuidByte4, MSETransportPositionY, MSETransportTime, MSETransportSeat, MSETransportGuidByte6, MSETransportGuidByte1, MSETransportGuidByte0, MSETransportOrientation, MSETransportPrevTime, MSETransportPositionX, MSETransportGuidByte7, MSETransportVehicleId, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEFallVerticalSpeed, MSEOrientation, MSESplineElevation, MSETimestamp, MSEPitch, MSEEnd, }; MovementStatusElements const MovementGravityEnableAck[] = { MSEPositionZ, MSEPositionX, MSECounter, MSEPositionY, MSEHasSplineElevation, MSEHasMovementFlags2, MSEHasGuidByte6, MSEHasOrientation, MSEZeroBit, MSEHasGuidByte5, MSEHasSpline, MSEHasGuidByte3, MSEHasTransportData, MSEHasPitch, MSEHasGuidByte1, MSEHasTimestamp, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasMovementFlags, MSEHasFallData, MSEHasGuidByte0, MSEHasTransportVehicleId, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte3, MSEHasTransportGuidByte7, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEHasTransportPrevTime, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasFallDirection, MSEMovementFlags, MSEMovementFlags2, MSEGuidByte5, MSEGuidByte4, MSEGuidByte1, MSEGuidByte7, MSEGuidByte0, MSEGuidByte2, MSEGuidByte3, MSEGuidByte6, MSEFallTime, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallSinAngle, MSEFallVerticalSpeed, MSETransportGuidByte1, MSETransportPositionX, MSETransportVehicleId, MSETransportOrientation, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportGuidByte7, MSETransportGuidByte6, MSETransportSeat, MSETransportGuidByte3, MSETransportGuidByte4, MSETransportPositionZ, MSETransportPrevTime, MSETransportGuidByte5, MSETransportTime, MSETransportPositionY, MSESplineElevation, MSEOrientation, MSEPitch, MSETimestamp, MSEEnd, }; MovementStatusElements const MovementHoverAck[] = { MSECounter, MSEPositionZ, MSEPositionY, MSEPositionX, MSEHasGuidByte4, MSEHasTransportData, MSEHasGuidByte2, MSEHasTimestamp, MSEHasSpline, MSEHasMovementFlags, MSEHasGuidByte1, MSEHasPitch, MSEHasGuidByte0, MSEHasGuidByte6, MSEHasGuidByte7, MSEHasGuidByte5, MSEZeroBit, MSEHasFallData, MSEHasMovementFlags2, MSEHasSplineElevation, MSEHasOrientation, MSEHasGuidByte3, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEHasTransportVehicleId, MSEHasTransportGuidByte1, MSEHasTransportGuidByte0, MSEHasTransportGuidByte3, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEHasTransportPrevTime, MSEMovementFlags, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte1, MSEGuidByte4, MSEGuidByte7, MSEGuidByte2, MSEGuidByte5, MSEGuidByte6, MSEGuidByte3, MSEGuidByte0, MSETimestamp, MSEFallSinAngle, MSEFallCosAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEFallVerticalSpeed, MSEOrientation, MSETransportGuidByte1, MSETransportVehicleId, MSETransportGuidByte2, MSETransportGuidByte7, MSETransportGuidByte3, MSETransportGuidByte4, MSETransportSeat, MSETransportPositionX, MSETransportPositionZ, MSETransportOrientation, MSETransportTime, MSETransportGuidByte0, MSETransportPositionY, MSETransportGuidByte5, MSETransportPrevTime, MSETransportGuidByte6, MSESplineElevation, MSEPitch, MSEEnd, }; MovementStatusElements const MovementKnockBackAck[] = { MSEPositionY, MSEPositionZ, MSECounter, MSEPositionX, MSEHasGuidByte6, MSEHasOrientation, MSEHasPitch, MSEHasSplineElevation, MSEHasGuidByte3, MSEHasGuidByte4, MSEHasGuidByte1, MSEHasGuidByte2, MSEHasSpline, MSEHasGuidByte7, MSEZeroBit, MSEHasMovementFlags2, MSEHasTimestamp, MSEHasGuidByte0, MSEHasMovementFlags, MSEHasTransportData, MSEHasGuidByte5, MSEHasFallData, MSEMovementFlags, MSEHasTransportGuidByte4, MSEHasTransportGuidByte1, MSEHasTransportPrevTime, MSEHasTransportGuidByte0, MSEHasTransportVehicleId, MSEHasTransportGuidByte6, MSEHasTransportGuidByte2, MSEHasTransportGuidByte3, MSEHasTransportGuidByte5, MSEHasTransportGuidByte7, MSEMovementFlags2, MSEHasFallDirection, MSEGuidByte4, MSEGuidByte5, MSEGuidByte1, MSEGuidByte6, MSEGuidByte0, MSEGuidByte3, MSEGuidByte2, MSEGuidByte7, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallTime, MSEFallVerticalSpeed, MSETimestamp, MSETransportPositionY, MSETransportGuidByte4, MSETransportPrevTime, MSETransportGuidByte7, MSETransportOrientation, MSETransportGuidByte6, MSETransportTime, MSETransportGuidByte3, MSETransportGuidByte1, MSETransportVehicleId, MSETransportGuidByte2, MSETransportPositionZ, MSETransportGuidByte0, MSETransportGuidByte5, MSETransportPositionX, MSETransportSeat, MSEPitch, MSESplineElevation, MSEOrientation, MSEEnd, }; MovementStatusElements const MovementWaterWalkAck[] = { MSEPositionY, MSEPositionZ, MSECounter, MSEPositionX, MSEHasTimestamp, MSEHasPitch, MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasOrientation, MSEHasGuidByte1, MSEHasMovementFlags2, MSEHasGuidByte2, MSEHasMovementFlags, MSEHasGuidByte3, MSEHasTransportData, MSEHasGuidByte6, MSEHasFallData, MSEHasGuidByte4, MSEZeroBit, MSEHasSplineElevation, MSEHasSpline, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte2, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEHasTransportPrevTime, MSEHasTransportGuidByte3, MSEHasTransportVehicleId, MSEHasTransportGuidByte4, MSEMovementFlags, MSEHasFallDirection, MSEMovementFlags2, MSEGuidByte2, MSEGuidByte7, MSEGuidByte3, MSEGuidByte5, MSEGuidByte6, MSEGuidByte0, MSEGuidByte4, MSEGuidByte1, MSETransportPositionX, MSETransportGuidByte1, MSETransportVehicleId, MSETransportGuidByte0, MSETransportOrientation, MSETransportGuidByte7, MSETransportPositionY, MSETransportPrevTime, MSETransportTime, MSETransportGuidByte5, MSETransportSeat, MSETransportPositionZ, MSETransportGuidByte3, MSETransportGuidByte2, MSETransportGuidByte6, MSETransportGuidByte4, MSESplineElevation, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallVerticalSpeed, MSEFallTime, MSEOrientation, MSETimestamp, MSEPitch, MSEEnd, }; MovementStatusElements const MovementUpdateKnockBack[] = { MSEZeroBit, MSEHasGuidByte4, MSEHasMovementFlags, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEHasTransportGuidByte1, MSEHasTransportGuidByte6, MSEHasTransportGuidByte2, MSEHasTransportGuidByte4, MSEHasTransportGuidByte0, MSEHasTransportGuidByte3, MSEHasGuidByte5, MSEHasGuidByte6, MSEMovementFlags, MSEHasFallDirection, MSEHasOrientation, MSEOrientation, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallCosAngle, MSEFallTime, MSEFallVerticalSpeed, MSEGuidByte3, MSETransportGuidByte5, MSETransportGuidByte7, MSETransportSeat, MSETransportGuidByte3, MSETransportGuidByte6, MSETransportPositionZ, MSETransportGuidByte1, MSETransportPositionY, MSETransportPositionX, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportOrientation, MSETransportTime, MSETransportGuidByte4, MSEPitch, MSEPositionZ, MSETimestamp, MSEPositionX, MSEGuidByte4, MSEGuidByte6, MSEGuidByte7, MSEGuidByte2, MSEGuidByte1, MSEPositionY, MSEGuidByte0, MSEGuidByte5, MSEEnd, }; MovementStatusElements const SplineMoveSetWalkSpeed[] = { MSEHasGuidByte0, MSEHasGuidByte6, MSEHasGuidByte7, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte2, MSEHasGuidByte4, MSEGuidByte0, MSEGuidByte4, MSEGuidByte7, MSEGuidByte1, MSEGuidByte5, MSEGuidByte3, MSEExtraElement, MSEGuidByte6, MSEGuidByte2, MSEEnd, }; MovementStatusElements const SplineMoveSetRunSpeed[] = { MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasGuidByte2, MSEGuidByte0, MSEGuidByte7, MSEGuidByte6, MSEGuidByte5, MSEGuidByte3, MSEGuidByte4, MSEExtraElement, MSEGuidByte2, MSEGuidByte1, MSEEnd, }; MovementStatusElements const SplineMoveSetRunBackSpeed[] = { MSEHasGuidByte1, MSEHasGuidByte2, MSEHasGuidByte6, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte4, MSEGuidByte1, MSEExtraElement, MSEGuidByte2, MSEGuidByte4, MSEGuidByte0, MSEGuidByte3, MSEGuidByte6, MSEGuidByte5, MSEGuidByte7, MSEEnd, }; MovementStatusElements const SplineMoveSetSwimSpeed[] = { MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasGuidByte3, MSEHasGuidByte1, MSEGuidByte5, MSEGuidByte6, MSEGuidByte1, MSEGuidByte0, MSEGuidByte2, MSEGuidByte4, MSEExtraElement, MSEGuidByte7, MSEGuidByte3, MSEEnd, }; MovementStatusElements const SplineMoveSetSwimBackSpeed[] = { MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasGuidByte7, MSEHasGuidByte2, MSEGuidByte5, MSEGuidByte3, MSEGuidByte1, MSEGuidByte0, MSEGuidByte7, MSEGuidByte6, MSEExtraElement, MSEGuidByte4, MSEGuidByte2, MSEEnd, }; MovementStatusElements const SplineMoveSetTurnRate[] = { MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte7, MSEHasGuidByte0, MSEExtraElement, MSEGuidByte1, MSEGuidByte5, MSEGuidByte3, MSEGuidByte2, MSEGuidByte7, MSEGuidByte4, MSEGuidByte6, MSEGuidByte0, MSEEnd, }; MovementStatusElements const SplineMoveSetFlightSpeed[] = { MSEHasGuidByte7, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasGuidByte5, MSEHasGuidByte2, MSEGuidByte0, MSEGuidByte5, MSEGuidByte4, MSEGuidByte7, MSEGuidByte3, MSEGuidByte2, MSEGuidByte1, MSEGuidByte6, MSEExtraElement, MSEEnd, }; MovementStatusElements const SplineMoveSetFlightBackSpeed[] = { MSEHasGuidByte2, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte4, MSEHasGuidByte7, MSEGuidByte5, MSEExtraElement, MSEGuidByte6, MSEGuidByte1, MSEGuidByte0, MSEGuidByte2, MSEGuidByte3, MSEGuidByte7, MSEGuidByte4, MSEEnd, }; MovementStatusElements const SplineMoveSetPitchRate[] = { MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte2, MSEGuidByte1, MSEGuidByte5, MSEGuidByte7, MSEGuidByte0, MSEGuidByte6, MSEGuidByte3, MSEGuidByte2, MSEExtraElement, MSEGuidByte4, MSEEnd, }; MovementStatusElements const MoveSetWalkSpeed[] = { MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte7, MSEGuidByte6, MSEGuidByte1, MSEGuidByte5, MSEExtraElement, MSEGuidByte2, MSECounter, MSEGuidByte4, MSEGuidByte0, MSEGuidByte7, MSEGuidByte3, MSEEnd, }; MovementStatusElements const MoveSetRunSpeed[] = { MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte5, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte4, MSEGuidByte5, MSEGuidByte3, MSEGuidByte1, MSEGuidByte4, MSECounter, MSEExtraElement, MSEGuidByte6, MSEGuidByte0, MSEGuidByte7, MSEGuidByte2, MSEEnd, }; MovementStatusElements const MoveSetRunBackSpeed[] = { MSEHasGuidByte0, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasGuidByte7, MSEGuidByte5, MSECounter, MSEExtraElement, MSEGuidByte0, MSEGuidByte4, MSEGuidByte7, MSEGuidByte3, MSEGuidByte1, MSEGuidByte2, MSEGuidByte6, MSEEnd, }; MovementStatusElements const MoveSetSwimSpeed[] = { MSEHasGuidByte5, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte3, MSEHasGuidByte2, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte6, MSEGuidByte0, MSECounter, MSEGuidByte6, MSEGuidByte3, MSEGuidByte5, MSEGuidByte2, MSEExtraElement, MSEGuidByte1, MSEGuidByte7, MSEGuidByte4, MSEEnd, }; MovementStatusElements const MoveSetSwimBackSpeed[] = { MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte7, MSECounter, MSEGuidByte0, MSEGuidByte3, MSEGuidByte4, MSEGuidByte6, MSEGuidByte5, MSEGuidByte1, MSEExtraElement, MSEGuidByte7, MSEGuidByte2, MSEEnd, }; MovementStatusElements const MoveSetTurnRate[] = { MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte5, MSEHasGuidByte6, MSEHasGuidByte3, MSEGuidByte5, MSEGuidByte7, MSEGuidByte2, MSEExtraElement, MSEGuidByte3, MSEGuidByte1, MSEGuidByte0, MSECounter, MSEGuidByte6, MSEGuidByte4, MSEEnd, }; MovementStatusElements const MoveSetFlightSpeed[] = { MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte3, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasGuidByte4, MSEGuidByte0, MSEGuidByte1, MSEGuidByte7, MSEGuidByte5, MSEExtraElement, MSECounter, MSEGuidByte2, MSEGuidByte6, MSEGuidByte3, MSEGuidByte4, MSEEnd, }; MovementStatusElements const MoveSetFlightBackSpeed[] = { MSEHasGuidByte1, MSEHasGuidByte2, MSEHasGuidByte6, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte3, MSEHasGuidByte0, MSEHasGuidByte5, MSEGuidByte3, MSECounter, MSEGuidByte6, MSEExtraElement, MSEGuidByte1, MSEGuidByte2, MSEGuidByte4, MSEGuidByte0, MSEGuidByte5, MSEGuidByte7, MSEEnd, }; MovementStatusElements const MoveSetPitchRate[] = { MSEHasGuidByte1, MSEHasGuidByte2, MSEHasGuidByte6, MSEHasGuidByte7, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte4, MSEExtraElement, MSEGuidByte6, MSEGuidByte4, MSEGuidByte0, MSECounter, MSEGuidByte1, MSEGuidByte2, MSEGuidByte7, MSEGuidByte3, MSEGuidByte5, MSEEnd, }; MovementStatusElements const MoveSetCollisionHeight[] = { MSEZeroBit, MSEZeroBit, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte2, MSEHasGuidByte0, MSEHasGuidByte3, MSEGuidByte6, MSEGuidByte0, MSEGuidByte4, MSEGuidByte3, MSEGuidByte5, MSECounter, MSEGuidByte1, MSEGuidByte2, MSEGuidByte7, MSEExtraElement, MSEEnd, }; MovementStatusElements const SplineMoveSetWalkMode[] = { MSEHasGuidByte7, MSEHasGuidByte6, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte0, MSEGuidByte4, MSEGuidByte2, MSEGuidByte1, MSEGuidByte6, MSEGuidByte5, MSEGuidByte0, MSEGuidByte7, MSEGuidByte3, MSEEnd, }; MovementStatusElements const SplineMoveSetRunMode[] = { MSEHasGuidByte5, MSEHasGuidByte6, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte1, MSEGuidByte7, MSEGuidByte0, MSEGuidByte4, MSEGuidByte6, MSEGuidByte5, MSEGuidByte1, MSEGuidByte2, MSEGuidByte3, MSEEnd, }; MovementStatusElements const SplineMoveGravityDisable[] = { MSEHasGuidByte7, MSEHasGuidByte3, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte6, MSEGuidByte7, MSEGuidByte1, MSEGuidByte3, MSEGuidByte4, MSEGuidByte6, MSEGuidByte2, MSEGuidByte5, MSEGuidByte0, MSEEnd, }; MovementStatusElements const SplineMoveGravityEnable[] = { MSEHasGuidByte5, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte0, MSEGuidByte7, MSEGuidByte3, MSEGuidByte4, MSEGuidByte2, MSEGuidByte1, MSEGuidByte6, MSEGuidByte0, MSEGuidByte5, MSEEnd, }; MovementStatusElements const SplineMoveSetHover[] = { MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte5, MSEGuidByte2, MSEGuidByte4, MSEGuidByte3, MSEGuidByte1, MSEGuidByte7, MSEGuidByte0, MSEGuidByte5, MSEGuidByte6, MSEEnd, }; MovementStatusElements const SplineMoveUnsetHover[] = { MSEHasGuidByte6, MSEHasGuidByte7, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasGuidByte5, MSEHasGuidByte2, MSEGuidByte4, MSEGuidByte5, MSEGuidByte3, MSEGuidByte0, MSEGuidByte2, MSEGuidByte7, MSEGuidByte6, MSEGuidByte1, MSEEnd, }; MovementStatusElements const SplineMoveStartSwim[] = { MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte2, MSEHasGuidByte4, MSEGuidByte3, MSEGuidByte7, MSEGuidByte2, MSEGuidByte5, MSEGuidByte6, MSEGuidByte4, MSEGuidByte1, MSEGuidByte0, MSEEnd, }; MovementStatusElements const SplineMoveStopSwim[] = { MSEHasGuidByte4, MSEHasGuidByte1, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte6, MSEGuidByte6, MSEGuidByte0, MSEGuidByte7, MSEGuidByte2, MSEGuidByte3, MSEGuidByte1, MSEGuidByte5, MSEGuidByte4, MSEEnd, }; MovementStatusElements const SplineMoveSetFlying[] = { MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte5, MSEGuidByte7, MSEGuidByte0, MSEGuidByte5, MSEGuidByte6, MSEGuidByte4, MSEGuidByte1, MSEGuidByte3, MSEGuidByte2, MSEEnd, }; MovementStatusElements const SplineMoveUnsetFlying[] = { MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasGuidByte6, MSEGuidByte7, MSEGuidByte2, MSEGuidByte3, MSEGuidByte4, MSEGuidByte5, MSEGuidByte1, MSEGuidByte6, MSEGuidByte0, MSEEnd, }; MovementStatusElements const SplineMoveSetWaterWalk[] = { MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte0, MSEGuidByte0, MSEGuidByte6, MSEGuidByte3, MSEGuidByte7, MSEGuidByte4, MSEGuidByte2, MSEGuidByte5, MSEGuidByte1, MSEEnd, }; MovementStatusElements const SplineMoveSetLandWalk[] = { MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte1, MSEGuidByte5, MSEGuidByte7, MSEGuidByte3, MSEGuidByte4, MSEGuidByte1, MSEGuidByte2, MSEGuidByte0, MSEGuidByte6, MSEEnd, }; MovementStatusElements const SplineMoveSetFeatherFall[] = { MSEHasGuidByte3, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte0, MSEGuidByte1, MSEGuidByte4, MSEGuidByte7, MSEGuidByte6, MSEGuidByte2, MSEGuidByte0, MSEGuidByte5, MSEGuidByte3, MSEEnd, }; MovementStatusElements const SplineMoveSetNormalFall[] = { MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte4, MSEGuidByte7, MSEGuidByte6, MSEGuidByte2, MSEGuidByte0, MSEGuidByte5, MSEGuidByte4, MSEGuidByte3, MSEGuidByte1, MSEEnd, }; MovementStatusElements const SplineMoveRoot[] = { MSEHasGuidByte5, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte2, MSEHasGuidByte0, MSEGuidByte2, MSEGuidByte1, MSEGuidByte7, MSEGuidByte3, MSEGuidByte5, MSEGuidByte0, MSEGuidByte6, MSEGuidByte4, MSEEnd, }; MovementStatusElements const SplineMoveUnroot[] = { MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte5, MSEHasGuidByte3, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasGuidByte4, MSEGuidByte6, MSEGuidByte3, MSEGuidByte1, MSEGuidByte5, MSEGuidByte2, MSEGuidByte0, MSEGuidByte7, MSEGuidByte4, MSEEnd, }; MovementStatusElements const MoveSetCanFly[] = { MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte7, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte3, MSEGuidByte6, MSEGuidByte3, MSECounter, MSEGuidByte2, MSEGuidByte1, MSEGuidByte4, MSEGuidByte7, MSEGuidByte0, MSEGuidByte5, MSEEnd, }; MovementStatusElements const MoveUnsetCanFly[] = { MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasGuidByte0, MSEHasGuidByte3, MSEHasGuidByte6, MSEHasGuidByte7, MSEGuidByte4, MSEGuidByte6, MSECounter, MSEGuidByte1, MSEGuidByte0, MSEGuidByte2, MSEGuidByte3, MSEGuidByte5, MSEGuidByte7, MSEEnd, }; MovementStatusElements const MoveSetHover[] = { MSEHasGuidByte1, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte6, MSEHasGuidByte7, MSEGuidByte5, MSEGuidByte4, MSEGuidByte1, MSEGuidByte2, MSEGuidByte3, MSEGuidByte6, MSEGuidByte0, MSEGuidByte7, MSECounter, MSEEnd, }; MovementStatusElements const MoveUnsetHover[] = { MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte3, MSEHasGuidByte1, MSEHasGuidByte2, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte0, MSEGuidByte4, MSEGuidByte5, MSEGuidByte3, MSEGuidByte6, MSEGuidByte7, MSEGuidByte1, MSEGuidByte2, MSEGuidByte0, MSECounter, MSEEnd, }; MovementStatusElements const MoveWaterWalk[] = { MSEHasGuidByte4, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasGuidByte2, MSEGuidByte0, MSEGuidByte5, MSEGuidByte2, MSECounter, MSEGuidByte7, MSEGuidByte3, MSEGuidByte4, MSEGuidByte1, MSEGuidByte6, MSEEnd, }; MovementStatusElements const MoveLandWalk[] = { MSEHasGuidByte5, MSEHasGuidByte1, MSEHasGuidByte6, MSEHasGuidByte2, MSEHasGuidByte3, MSEHasGuidByte4, MSEHasGuidByte0, MSEHasGuidByte7, MSEGuidByte6, MSEGuidByte1, MSEGuidByte7, MSEGuidByte5, MSEGuidByte4, MSEGuidByte0, MSEGuidByte3, MSEGuidByte2, MSECounter, MSEEnd, }; MovementStatusElements const MoveFeatherFall[] = { MSEHasGuidByte3, MSEHasGuidByte1, MSEHasGuidByte7, MSEHasGuidByte0, MSEHasGuidByte4, MSEHasGuidByte2, MSEHasGuidByte5, MSEHasGuidByte6, MSEGuidByte5, MSEGuidByte7, MSEGuidByte2, MSECounter, MSEGuidByte0, MSEGuidByte3, MSEGuidByte4, MSEGuidByte1, MSEGuidByte6, MSEEnd, }; MovementStatusElements const MoveNormalFall[] = { MSECounter, MSEHasGuidByte3, MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte5, MSEHasGuidByte7, MSEHasGuidByte4, MSEHasGuidByte6, MSEHasGuidByte2, MSEGuidByte2, MSEGuidByte7, MSEGuidByte1, MSEGuidByte4, MSEGuidByte5, MSEGuidByte0, MSEGuidByte3, MSEGuidByte6, MSEEnd, }; MovementStatusElements const MoveRoot[] = { MSEHasGuidByte2, MSEHasGuidByte7, MSEHasGuidByte6, MSEHasGuidByte0, MSEHasGuidByte5, MSEHasGuidByte4, MSEHasGuidByte1, MSEHasGuidByte3, MSEGuidByte1, MSEGuidByte0, MSEGuidByte2, MSEGuidByte5, MSECounter, MSEGuidByte3, MSEGuidByte4, MSEGuidByte7, MSEGuidByte6, MSEEnd, }; MovementStatusElements const MoveUnroot[] = { MSEHasGuidByte0, MSEHasGuidByte1, MSEHasGuidByte3, MSEHasGuidByte7, MSEHasGuidByte5, MSEHasGuidByte2, MSEHasGuidByte4, MSEHasGuidByte6, MSEGuidByte3, MSEGuidByte6, MSEGuidByte1, MSECounter, MSEGuidByte2, MSEGuidByte0, MSEGuidByte7, MSEGuidByte4, MSEGuidByte5, MSEEnd, }; MovementStatusElements const ChangeSeatsOnControlledVehicle[] = { MSEPositionY, MSEPositionX, MSEPositionZ, MSEExtraElement, MSEHasMovementFlags, MSEHasTransportData, MSEHasGuidByte2, MSEHasGuidByte6, MSEHasGuidByte4, MSEExtraElement, MSEExtraElement, MSEHasOrientation, MSEZeroBit, MSEExtraElement, MSEHasGuidByte7, MSEExtraElement, MSEHasTimestamp, MSEHasSplineElevation, MSEHasGuidByte5, MSEExtraElement, MSEHasMovementFlags2, MSEHasPitch, MSEExtraElement, MSEHasGuidByte0, MSEExtraElement, MSEHasFallData, MSEHasGuidByte1, MSEHasSpline, MSEMovementFlags, MSEExtraElement, MSEHasGuidByte3, MSEHasTransportGuidByte3, MSEHasTransportGuidByte0, MSEHasTransportGuidByte7, MSEHasTransportGuidByte5, MSEHasTransportVehicleId, MSEHasTransportGuidByte1, MSEHasTransportGuidByte2, MSEHasTransportPrevTime, MSEHasTransportGuidByte4, MSEHasTransportGuidByte6, MSEMovementFlags2, MSEHasFallDirection, MSEExtraElement, MSEGuidByte7, MSEGuidByte5, MSEExtraElement, MSEExtraElement, MSEGuidByte6, MSEExtraElement, MSEExtraElement, MSEGuidByte3, MSEExtraElement, MSEGuidByte0, MSEExtraElement, MSEGuidByte4, MSEGuidByte1, MSEExtraElement, MSEGuidByte2, MSEPitch, MSEFallCosAngle, MSEFallSinAngle, MSEFallHorizontalSpeed, MSEFallTime, MSEFallVerticalSpeed, MSETransportGuidByte2, MSETransportPrevTime, MSETransportVehicleId, MSETransportGuidByte0, MSETransportTime, MSETransportSeat, MSETransportPositionX, MSETransportOrientation, MSETransportGuidByte7, MSETransportGuidByte4, MSETransportGuidByte3, MSETransportGuidByte5, MSETransportPositionZ, MSETransportGuidByte1, MSETransportGuidByte6, MSETransportPositionY, MSESplineElevation, MSEOrientation, MSETimestamp, MSEEnd, }; MovementStatusElements const CastSpellEmbeddedMovement[] = { MSEPositionZ, MSEPositionY, MSEPositionX, MSEHasFallData, MSEHasTimestamp, MSEHasOrientation, MSEZeroBit, MSEHasSpline, MSEHasGuidByte6, MSEHasGuidByte4, MSEHasMovementFlags2, MSEHasGuidByte3, MSEHasGuidByte5, MSEHasSplineElevation, MSEHasPitch, MSEHasGuidByte7, MSEHasTransportData, MSEHasGuidByte2, MSEHasMovementFlags, MSEHasGuidByte1, MSEHasGuidByte0, MSEHasTransportGuidByte6, MSEHasTransportGuidByte2, MSEHasTransportGuidByte5, MSEHasTransportPrevTime, MSEHasTransportGuidByte7, MSEHasTransportGuidByte4, MSEHasTransportVehicleId, MSEHasTransportGuidByte0, MSEHasTransportGuidByte1, MSEHasTransportGuidByte3, MSEMovementFlags2, MSEMovementFlags, MSEHasFallDirection, MSEGuidByte1, MSEGuidByte4, MSEGuidByte7, MSEGuidByte3, MSEGuidByte0, MSEGuidByte2, MSEGuidByte5, MSEGuidByte6, MSETransportSeat, MSETransportOrientation, MSETransportTime, MSETransportGuidByte6, MSETransportGuidByte5, MSETransportVehicleId, MSETransportPositionX, MSETransportGuidByte4, MSETransportPositionZ, MSETransportGuidByte2, MSETransportGuidByte0, MSETransportPrevTime, MSETransportGuidByte1, MSETransportGuidByte3, MSETransportPositionY, MSETransportGuidByte7, MSEOrientation, MSESplineElevation, MSEFallTime, MSEFallHorizontalSpeed, MSEFallSinAngle, MSEFallCosAngle, MSEFallVerticalSpeed, MSETimestamp, MSEPitch, MSEEnd, }; void Movement::ExtraMovementStatusElement::ReadNextElement(ByteBuffer& packet) { MovementStatusElements const element = _elements[_index++]; switch (element) { case MSEHasGuidByte0: case MSEHasGuidByte1: case MSEHasGuidByte2: case MSEHasGuidByte3: case MSEHasGuidByte4: case MSEHasGuidByte5: case MSEHasGuidByte6: case MSEHasGuidByte7: Data.guid[element - MSEHasGuidByte0] = packet.ReadBit(); break; case MSEGuidByte0: case MSEGuidByte1: case MSEGuidByte2: case MSEGuidByte3: case MSEGuidByte4: case MSEGuidByte5: case MSEGuidByte6: case MSEGuidByte7: packet.ReadByteSeq(Data.guid[element - MSEGuidByte0]); break; case MSEExtraFloat: packet >> Data.floatData; break; case MSEExtraInt8: packet >> Data.byteData; break; default: ASSERT(PrintInvalidSequenceElement(element, __FUNCTION__)); break; } } void Movement::ExtraMovementStatusElement::WriteNextElement(ByteBuffer& packet) { MovementStatusElements const element = _elements[_index++]; switch (element) { case MSEHasGuidByte0: case MSEHasGuidByte1: case MSEHasGuidByte2: case MSEHasGuidByte3: case MSEHasGuidByte4: case MSEHasGuidByte5: case MSEHasGuidByte6: case MSEHasGuidByte7: packet.WriteBit(Data.guid[element - MSEHasGuidByte0]); break; case MSEGuidByte0: case MSEGuidByte1: case MSEGuidByte2: case MSEGuidByte3: case MSEGuidByte4: case MSEGuidByte5: case MSEGuidByte6: case MSEGuidByte7: packet.WriteByteSeq(Data.guid[element - MSEGuidByte0]); break; case MSEExtraFloat: packet << Data.floatData; break; case MSEExtraInt8: packet << Data.byteData; break; default: ASSERT(PrintInvalidSequenceElement(element, __FUNCTION__)); break; } } bool Movement::PrintInvalidSequenceElement(MovementStatusElements const element, char const* function) { TC_LOG_ERROR("entities.unit", "Incorrect sequence element %d detected at %s", element, function); return false; } Movement::PacketSender::PacketSender(Unit* unit, OpcodeServer serverControl, OpcodeServer playerControl, OpcodeServer broadcast /*= SMSG_PLAYER_MOVE*/, ExtraMovementStatusElement* extras /*= NULL*/) : _extraElements(extras), _unit(unit) { if (unit->GetTypeId() == TYPEID_PLAYER && unit->ToPlayer()->m_mover->GetTypeId() == TYPEID_PLAYER) { _selfOpcode = playerControl; _broadcast = broadcast; } else { _selfOpcode = static_cast(NULL_OPCODE); _broadcast = serverControl; } } void Movement::PacketSender::Send() const { bool isPlayerMovement = false; if (Player* player = _unit->ToPlayer()) { isPlayerMovement = player->m_mover->GetTypeId() == TYPEID_PLAYER; if (isPlayerMovement && _selfOpcode != static_cast(NULL_OPCODE)) { WorldPacket data(_selfOpcode); _unit->WriteMovementInfo(data, _extraElements); player->SendDirectMessage(&data); } } if (_broadcast != static_cast(NULL_OPCODE)) { ///! Need to reset current extra element index before writing another packet if (_extraElements) _extraElements->ResetIndex(); WorldPacket data(_broadcast); _unit->WriteMovementInfo(data, _extraElements); _unit->SendMessageToSet(&data, !isPlayerMovement); } } MovementStatusElements const* GetMovementStatusElementsSequence(uint32 opcode) { switch (opcode) { /* case MSG_MOVE_FALL_LAND: return MovementFallLand; case MSG_MOVE_HEARTBEAT: return MovementHeartBeat; case MSG_MOVE_JUMP: return MovementJump; case MSG_MOVE_SET_FACING: return MovementSetFacing; case MSG_MOVE_SET_PITCH: return MovementSetPitch; case MSG_MOVE_START_ASCEND: return MovementStartAscend; case MSG_MOVE_START_BACKWARD: return MovementStartBackward; case MSG_MOVE_START_DESCEND: return MovementStartDescend; case MSG_MOVE_START_FORWARD: return MovementStartForward; case MSG_MOVE_START_PITCH_DOWN: return MovementStartPitchDown; case MSG_MOVE_START_PITCH_UP: return MovementStartPitchUp; case MSG_MOVE_START_STRAFE_LEFT: return MovementStartStrafeLeft; case MSG_MOVE_START_STRAFE_RIGHT: return MovementStartStrafeRight; case MSG_MOVE_START_SWIM: return MovementStartSwim; case MSG_MOVE_START_TURN_LEFT: return MovementStartTurnLeft; case MSG_MOVE_START_TURN_RIGHT: return MovementStartTurnRight; case MSG_MOVE_STOP: return MovementStop; case MSG_MOVE_STOP_ASCEND: return MovementStopAscend; case MSG_MOVE_STOP_PITCH: return MovementStopPitch; case MSG_MOVE_STOP_STRAFE: return MovementStopStrafe; case MSG_MOVE_STOP_SWIM: return MovementStopSwim; case MSG_MOVE_STOP_TURN: return MovementStopTurn; case SMSG_PLAYER_MOVE: return PlayerMove; 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 SMSG_MOVE_UPDATE_TELEPORT: return MoveUpdateTeleport; case CMSG_FORCE_MOVE_ROOT_ACK: return ForceMoveRootAck; case CMSG_FORCE_MOVE_UNROOT_ACK: return ForceMoveUnrootAck; case CMSG_MOVE_FALL_RESET: return MovementFallReset; case CMSG_MOVE_FEATHER_FALL_ACK: return MovementFeatherFallAck; case CMSG_MOVE_FORCE_FLIGHT_SPEED_CHANGE_ACK: return MovementForceFlightSpeedChangeAck; case CMSG_MOVE_FORCE_RUN_BACK_SPEED_CHANGE_ACK: return MovementForceRunBackSpeedChangeAck; case CMSG_MOVE_FORCE_RUN_SPEED_CHANGE_ACK: return MovementForceRunSpeedChangeAck; case CMSG_MOVE_FORCE_SWIM_SPEED_CHANGE_ACK: return MovementForceSwimSpeedChangeAck; case CMSG_MOVE_FORCE_WALK_SPEED_CHANGE_ACK: return MovementForceWalkSpeedChangeAck; case CMSG_MOVE_GRAVITY_DISABLE_ACK: return MovementGravityDisableAck; case CMSG_MOVE_GRAVITY_ENABLE_ACK: return MovementGravityEnableAck; case CMSG_MOVE_HOVER_ACK: return MovementHoverAck; case CMSG_MOVE_KNOCK_BACK_ACK: return MovementKnockBackAck; case CMSG_MOVE_SET_CAN_FLY: return MovementSetCanFly; case CMSG_MOVE_SET_CAN_FLY_ACK: return MovementSetCanFlyAck; case CMSG_MOVE_SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY_ACK: return MovementSetCanTransitionBetweenSwimAndFlyAck; case SMSG_MOVE_SET_COLLISION_HEIGHT: return MoveSetCollisionHeight; case CMSG_MOVE_SET_COLLISION_HEIGHT_ACK: return MovementSetCollisionHeightAck; case SMSG_MOVE_UPDATE_COLLISION_HEIGHT: return MovementUpdateCollisionHeight; case CMSG_MOVE_WATER_WALK_ACK: return MovementWaterWalkAck; case MSG_MOVE_SET_RUN_MODE: return MovementSetRunMode; case MSG_MOVE_SET_WALK_MODE: return MovementSetWalkMode; case SMSG_MOVE_UPDATE_FLIGHT_SPEED: return MovementUpdateFlightSpeed; case SMSG_MOVE_UPDATE_RUN_SPEED: return MovementUpdateRunSpeed; case SMSG_MOVE_UPDATE_KNOCK_BACK: return MovementUpdateKnockBack; case SMSG_MOVE_UPDATE_RUN_BACK_SPEED: return MovementUpdateRunBackSpeed; case SMSG_MOVE_UPDATE_SWIM_SPEED: return MovementUpdateSwimSpeed; case SMSG_MOVE_UPDATE_WALK_SPEED: return MovementUpdateWalkSpeed; case SMSG_SPLINE_MOVE_SET_WALK_SPEED: return SplineMoveSetWalkSpeed; case SMSG_SPLINE_MOVE_SET_RUN_SPEED: return SplineMoveSetRunSpeed; case SMSG_SPLINE_MOVE_SET_RUN_BACK_SPEED: return SplineMoveSetRunBackSpeed; case SMSG_SPLINE_MOVE_SET_SWIM_SPEED: return SplineMoveSetSwimSpeed; case SMSG_SPLINE_MOVE_SET_SWIM_BACK_SPEED: return SplineMoveSetSwimBackSpeed; case SMSG_SPLINE_MOVE_SET_TURN_RATE: return SplineMoveSetTurnRate; case SMSG_SPLINE_MOVE_SET_FLIGHT_SPEED: return SplineMoveSetFlightSpeed; case SMSG_SPLINE_MOVE_SET_FLIGHT_BACK_SPEED: return SplineMoveSetFlightBackSpeed; case SMSG_SPLINE_MOVE_SET_PITCH_RATE: return SplineMoveSetPitchRate; case SMSG_MOVE_SET_WALK_SPEED: return MoveSetWalkSpeed; case SMSG_MOVE_SET_RUN_SPEED: return MoveSetRunSpeed; case SMSG_MOVE_SET_RUN_BACK_SPEED: return MoveSetRunBackSpeed; case SMSG_MOVE_SET_SWIM_SPEED: return MoveSetSwimSpeed; case SMSG_MOVE_SET_SWIM_BACK_SPEED: return MoveSetSwimBackSpeed; case SMSG_MOVE_SET_TURN_RATE: return MoveSetTurnRate; case SMSG_MOVE_SET_FLIGHT_SPEED: return MoveSetFlightSpeed; case SMSG_MOVE_SET_FLIGHT_BACK_SPEED: return MoveSetFlightBackSpeed; case SMSG_MOVE_SET_PITCH_RATE: return MoveSetPitchRate; case SMSG_SPLINE_MOVE_SET_WALK_MODE: return SplineMoveSetWalkMode; case SMSG_SPLINE_MOVE_SET_RUN_MODE: return SplineMoveSetRunMode; case SMSG_SPLINE_MOVE_GRAVITY_DISABLE: return SplineMoveGravityDisable; case SMSG_SPLINE_MOVE_GRAVITY_ENABLE: return SplineMoveGravityEnable; case SMSG_SPLINE_MOVE_SET_HOVER: return SplineMoveSetHover; case SMSG_SPLINE_MOVE_UNSET_HOVER: return SplineMoveUnsetHover; case SMSG_SPLINE_MOVE_START_SWIM: return SplineMoveStartSwim; case SMSG_SPLINE_MOVE_STOP_SWIM: return SplineMoveStopSwim; case SMSG_SPLINE_MOVE_SET_FLYING: return SplineMoveSetFlying; case SMSG_SPLINE_MOVE_UNSET_FLYING: return SplineMoveUnsetFlying; case SMSG_SPLINE_MOVE_SET_WATER_WALK: return SplineMoveSetWaterWalk; case SMSG_SPLINE_MOVE_SET_LAND_WALK: return SplineMoveSetLandWalk; case SMSG_SPLINE_MOVE_SET_FEATHER_FALL: return SplineMoveSetFeatherFall; case SMSG_SPLINE_MOVE_SET_NORMAL_FALL: return SplineMoveSetNormalFall; case SMSG_SPLINE_MOVE_ROOT: return SplineMoveRoot; case SMSG_SPLINE_MOVE_UNROOT: return SplineMoveUnroot; case SMSG_MOVE_SET_CAN_FLY: return MoveSetCanFly; case SMSG_MOVE_UNSET_CAN_FLY: return MoveUnsetCanFly; case SMSG_MOVE_SET_HOVER: return MoveSetHover; case SMSG_MOVE_UNSET_HOVER: return MoveUnsetHover; case SMSG_MOVE_WATER_WALK: return MoveWaterWalk; case SMSG_MOVE_LAND_WALK: return MoveLandWalk; case SMSG_MOVE_FEATHER_FALL: return MoveFeatherFall; case SMSG_MOVE_NORMAL_FALL: return MoveNormalFall; case SMSG_MOVE_ROOT: return MoveRoot; case SMSG_MOVE_UNROOT: return MoveUnroot; case CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE: return ChangeSeatsOnControlledVehicle; case CMSG_CAST_SPELL: case CMSG_PET_CAST_SPELL: case CMSG_USE_ITEM: return CastSpellEmbeddedMovement; */ default: break; } return NULL; }