diff options
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 26 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 253 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.h | 3 | ||||
-rw-r--r-- | src/server/game/Handlers/MovementHandler.cpp | 24 | ||||
-rw-r--r-- | src/server/game/Handlers/VehicleHandler.cpp | 27 | ||||
-rw-r--r-- | src/server/game/Movement/MovementStructures.cpp | 5453 | ||||
-rw-r--r-- | src/server/game/Movement/MovementStructures.h | 158 | ||||
-rw-r--r-- | src/server/game/Server/Packets/MovementPackets.cpp | 44 | ||||
-rw-r--r-- | src/server/game/Server/Packets/MovementPackets.h | 63 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 56 | ||||
-rw-r--r-- | src/server/game/Server/WorldSession.h | 7 |
11 files changed, 181 insertions, 5933 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index a9596d28960..80990c1ed01 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -60,7 +60,6 @@ #include "MailPackets.h" #include "MapInstanced.h" #include "MapManager.h" -#include "MovementStructures.h" #include "ObjectAccessor.h" #include "ObjectMgr.h" #include "Opcodes.h" @@ -26067,17 +26066,28 @@ void Player::OnCombatExit() void Player::SendMovementSetCanTransitionBetweenSwimAndFly(bool apply) { - Movement::PacketSender(this, static_cast<OpcodeServer>(NULL_OPCODE), apply ? - SMSG_MOVE_ENABLE_TRANSITION_BETWEEN_SWIM_AND_FLY : - SMSG_MOVE_DISABLE_TRANSITION_BETWEEN_SWIM_AND_FLY).Send(); + WorldPackets::Movement::MoveSetFlag packet(apply ? SMSG_MOVE_ENABLE_TRANSITION_BETWEEN_SWIM_AND_FLY : SMSG_MOVE_DISABLE_TRANSITION_BETWEEN_SWIM_AND_FLY); + packet.MoverGUID = GetGUID(); + packet.SequenceIndex = m_movementCounter++; + SendMessageToSet(packet.Write(), true); } void Player::SendMovementSetCollisionHeight(float height) { - static MovementStatusElements const heightElement = MSEExtraFloat; - Movement::ExtraMovementStatusElement extra(&heightElement); - extra.Data.floatData = height; - Movement::PacketSender(this, static_cast<OpcodeServer>(NULL_OPCODE), SMSG_MOVE_SET_COLLISION_HEIGHT, SMSG_MOVE_UPDATE_COLLISION_HEIGHT, &extra).Send(); + WorldPackets::Movement::MoveSetCollisionHeight setCollisionHeight; + setCollisionHeight.MoverGUID = GetGUID(); + setCollisionHeight.SequenceIndex = m_movementCounter++; + setCollisionHeight.Height = height; + setCollisionHeight.Scale = GetObjectScale(); + setCollisionHeight.MountDisplayID = GetUInt32Value(UNIT_FIELD_MOUNTDISPLAYID); + setCollisionHeight.Reason = WorldPackets::Movement::UPDATE_COLLISION_HEIGHT_MOUNT; + SendDirectMessage(setCollisionHeight.Write()); + + WorldPackets::Movement::MoveUpdateCollisionHeight updateCollisionHeight; + updateCollisionHeight.movementInfo = &m_movementInfo; + updateCollisionHeight.Height = height; + updateCollisionHeight.Scale = GetObjectScale(); + SendMessageToSet(updateCollisionHeight.Write(), false); } float Player::GetCollisionHeight(bool mounted) const diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index f384a42ff28..f0e4907a93a 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -61,7 +61,6 @@ #include "Vehicle.h" #include "World.h" #include "WorldPacket.h" -#include "MovementStructures.h" #include "WorldSession.h" #include "ChatPackets.h" #include "MiscPackets.h" @@ -10099,7 +10098,7 @@ int32 Unit::ModifyHealth(int32 dVal) WorldPackets::Combat::HealthUpdate packet; packet.Guid = GetGUID(); packet.Health = GetHealth(); - + if (Player* player = GetCharmerOrOwnerPlayerOrPlayerItself()) player->GetSession()->SendPacket(packet.Write()); @@ -13811,10 +13810,26 @@ void Unit::SetRooted(bool apply, bool packetOnly /*= false*/) RemoveUnitMovementFlag(MOVEMENTFLAG_ROOT); } - if (apply) - Movement::PacketSender(this, SMSG_MOVE_SPLINE_ROOT, SMSG_MOVE_ROOT, SMSG_MOVE_ROOT).Send(); + + static OpcodeServer const rootOpcodeTable[2][2] = + { + { SMSG_MOVE_SPLINE_UNROOT, SMSG_MOVE_UNROOT }, + { SMSG_MOVE_SPLINE_ROOT, SMSG_MOVE_ROOT } + }; + + if (GetTypeId() == TYPEID_PLAYER && ToPlayer()->m_mover->GetTypeId() == TYPEID_PLAYER) + { + WorldPackets::Movement::MoveSetFlag packet(rootOpcodeTable[apply][1]); + packet.MoverGUID = GetGUID(); + packet.SequenceIndex = m_movementCounter++; + SendMessageToSet(packet.Write(), true); + } else - Movement::PacketSender(this, SMSG_MOVE_SPLINE_UNROOT, SMSG_MOVE_UNROOT, SMSG_MOVE_UNROOT).Send(); + { + WorldPackets::Movement::MoveSplineSetFlag packet(rootOpcodeTable[apply][0]); + packet.MoverGUID = GetGUID(); + SendMessageToSet(packet.Write(), true); + } } void Unit::SetFeared(bool apply) @@ -15295,225 +15310,6 @@ void Unit::NearTeleportTo(float x, float y, float z, float orientation, bool cas } } -void Unit::WriteMovementInfo(WorldPacket& data, Movement::ExtraMovementStatusElement* extras /*= NULL*/) -{ - MovementInfo const& mi = m_movementInfo; - - bool hasMovementFlags = GetUnitMovementFlags() != 0; - bool hasMovementFlags2 = GetExtraUnitMovementFlags() != 0; - bool hasTimestamp = true; - bool hasOrientation = !G3D::fuzzyEq(GetOrientation(), 0.0f); - bool hasTransportData = !GetTransGUID().IsEmpty(); - bool hasSpline = IsSplineEnabled(); - - bool hasTransportPrevTime = hasTransportData && m_movementInfo.transport.prevTime != 0; - bool hasTransportVehicleId = hasTransportData && mi.transport.vehicleId != 0; - bool hasPitch = HasUnitMovementFlag(MovementFlags(MOVEMENTFLAG_SWIMMING | MOVEMENTFLAG_FLYING)) || HasExtraUnitMovementFlag(MOVEMENTFLAG2_ALWAYS_ALLOW_PITCHING); - bool hasFallDirection = HasUnitMovementFlag(MOVEMENTFLAG_FALLING); - bool hasFallData = hasFallDirection || m_movementInfo.jump.fallTime != 0; - bool hasSplineElevation = HasUnitMovementFlag(MOVEMENTFLAG_SPLINE_ELEVATION); - - MovementStatusElements const* sequence = GetMovementStatusElementsSequence(data.GetOpcode()); - if (!sequence) - { - TC_LOG_ERROR("network", "Unit::WriteMovementInfo: No movement sequence found for opcode %s", GetOpcodeNameForLogging(static_cast<OpcodeServer>(data.GetOpcode())).c_str()); - return; - } - - ObjectGuid guid = GetGUID(); - ObjectGuid tguid = hasTransportData ? GetTransGUID() : ObjectGuid::Empty; - - for (; *sequence != MSEEnd; ++sequence) - { - MovementStatusElements const& element = *sequence; - - switch (element) - { - case MSEHasGuidByte0: - case MSEHasGuidByte1: - case MSEHasGuidByte2: - case MSEHasGuidByte3: - case MSEHasGuidByte4: - case MSEHasGuidByte5: - case MSEHasGuidByte6: - case MSEHasGuidByte7: - data.WriteBit(guid[element - MSEHasGuidByte0]); - break; - case MSEHasTransportGuidByte0: - case MSEHasTransportGuidByte1: - case MSEHasTransportGuidByte2: - case MSEHasTransportGuidByte3: - case MSEHasTransportGuidByte4: - case MSEHasTransportGuidByte5: - case MSEHasTransportGuidByte6: - case MSEHasTransportGuidByte7: - if (hasTransportData) - data.WriteBit(tguid[element - MSEHasTransportGuidByte0]); - break; - case MSEGuidByte0: - case MSEGuidByte1: - case MSEGuidByte2: - case MSEGuidByte3: - case MSEGuidByte4: - case MSEGuidByte5: - case MSEGuidByte6: - case MSEGuidByte7: - data.WriteByteSeq(guid[element - MSEGuidByte0]); - break; - case MSETransportGuidByte0: - case MSETransportGuidByte1: - case MSETransportGuidByte2: - case MSETransportGuidByte3: - case MSETransportGuidByte4: - case MSETransportGuidByte5: - case MSETransportGuidByte6: - case MSETransportGuidByte7: - if (hasTransportData) - data.WriteByteSeq(tguid[element - MSETransportGuidByte0]); - break; - case MSEHasMovementFlags: - data.WriteBit(!hasMovementFlags); - break; - case MSEHasMovementFlags2: - data.WriteBit(!hasMovementFlags2); - break; - case MSEHasTimestamp: - data.WriteBit(!hasTimestamp); - break; - case MSEHasOrientation: - data.WriteBit(!hasOrientation); - break; - case MSEHasTransportData: - data.WriteBit(hasTransportData); - break; - case MSEHasTransportPrevTime: - if (hasTransportData) - data.WriteBit(hasTransportPrevTime); - break; - case MSEHasTransportVehicleId: - if (hasTransportData) - data.WriteBit(hasTransportVehicleId); - break; - case MSEHasPitch: - data.WriteBit(!hasPitch); - break; - case MSEHasFallData: - data.WriteBit(hasFallData); - break; - case MSEHasFallDirection: - if (hasFallData) - data.WriteBit(hasFallDirection); - break; - case MSEHasSplineElevation: - data.WriteBit(!hasSplineElevation); - break; - case MSEHasSpline: - data.WriteBit(hasSpline); - break; - case MSEMovementFlags: - if (hasMovementFlags) - data.WriteBits(GetUnitMovementFlags(), 30); - break; - case MSEMovementFlags2: - if (hasMovementFlags2) - data.WriteBits(GetExtraUnitMovementFlags(), 12); - break; - case MSETimestamp: - if (hasTimestamp) - data << getMSTime(); - break; - case MSEPositionX: - data << GetPositionX(); - break; - case MSEPositionY: - data << GetPositionY(); - break; - case MSEPositionZ: - data << GetPositionZ(); - break; - case MSEOrientation: - if (hasOrientation) - data << GetOrientation(); - break; - case MSETransportPositionX: - if (hasTransportData) - data << GetTransOffsetX(); - break; - case MSETransportPositionY: - if (hasTransportData) - data << GetTransOffsetY(); - break; - case MSETransportPositionZ: - if (hasTransportData) - data << GetTransOffsetZ(); - break; - case MSETransportOrientation: - if (hasTransportData) - data << GetTransOffsetO(); - break; - case MSETransportSeat: - if (hasTransportData) - data << GetTransSeat(); - break; - case MSETransportTime: - if (hasTransportData) - data << GetTransTime(); - break; - case MSETransportPrevTime: - if (hasTransportData && hasTransportPrevTime) - data << mi.transport.prevTime; - break; - case MSETransportVehicleId: - if (hasTransportData && hasTransportVehicleId) - data << mi.transport.vehicleId; - break; - case MSEPitch: - if (hasPitch) - data << mi.pitch; - break; - case MSEFallTime: - if (hasFallData) - data << mi.jump.fallTime; - break; - case MSEFallVerticalSpeed: - if (hasFallData) - data << mi.jump.zspeed; - break; - case MSEFallCosAngle: - if (hasFallData && hasFallDirection) - data << mi.jump.cosAngle; - break; - case MSEFallSinAngle: - if (hasFallData && hasFallDirection) - data << mi.jump.sinAngle; - break; - case MSEFallHorizontalSpeed: - if (hasFallData && hasFallDirection) - data << mi.jump.xyspeed; - break; - case MSESplineElevation: - if (hasSplineElevation) - data << mi.splineElevation; - break; - case MSECounter: - data << m_movementCounter++; - break; - case MSEZeroBit: - data.WriteBit(0); - break; - case MSEOneBit: - data.WriteBit(1); - break; - case MSEExtraElement: - extras->WriteNextElement(data); - break; - default: - ASSERT(Movement::PrintInvalidSequenceElement(element, __FUNCTION__)); - break; - } - } -} - void Unit::SendTeleportPacket(Position& pos) { // SMSG_MOVE_UPDATE_TELEPORT is sent to nearby players to signal the teleport @@ -15915,12 +15711,11 @@ bool Unit::SetWalk(bool enable) else RemoveUnitMovementFlag(MOVEMENTFLAG_WALKING); - ///@ TODO: Find proper opcode for walk mode setting in player mind controlling a player case - if (enable) - Movement::PacketSender(this, SMSG_MOVE_SPLINE_SET_WALK_MODE, SMSG_MOVE_SPLINE_SET_WALK_MODE).Send(); - else - Movement::PacketSender(this, SMSG_MOVE_SPLINE_SET_RUN_MODE, SMSG_MOVE_SPLINE_SET_RUN_MODE).Send(); + static OpcodeServer const walkModeTable[2] = { SMSG_MOVE_SPLINE_SET_RUN_MODE, SMSG_MOVE_SPLINE_SET_WALK_MODE }; + WorldPackets::Movement::MoveSplineSetFlag packet(walkModeTable[enable]); + packet.MoverGUID = GetGUID(); + SendMessageToSet(packet.Write(), true); return true; } diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 93d586a7138..b009fd7a0a6 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -414,7 +414,6 @@ class TransportBase; class SpellCastTargets; namespace Movement { - class ExtraMovementStatusElement; class MoveSpline; } @@ -2159,8 +2158,6 @@ class Unit : public WorldObject void _ExitVehicle(Position const* exitPosition = NULL); void _EnterVehicle(Vehicle* vehicle, int8 seatId, AuraApplication const* aurApp = NULL); - void WriteMovementInfo(WorldPacket& data, Movement::ExtraMovementStatusElement* extras = NULL); - bool isMoving() const { return m_movementInfo.HasMovementFlag(MOVEMENTFLAG_MASK_MOVING); } bool isTurning() const { return m_movementInfo.HasMovementFlag(MOVEMENTFLAG_MASK_TURNING); } virtual bool CanFly() const = 0; diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp index 0bf3deede07..8fb054f05b6 100644 --- a/src/server/game/Handlers/MovementHandler.cpp +++ b/src/server/game/Handlers/MovementHandler.cpp @@ -30,7 +30,6 @@ #include "WaypointMovementGenerator.h" #include "InstanceSaveMgr.h" #include "ObjectMgr.h" -#include "MovementStructures.h" #include "Vehicle.h" #include "MovementPackets.h" @@ -392,15 +391,12 @@ void WorldSession::HandleMovementOpcodes(WorldPackets::Movement::ClientPlayerMov void WorldSession::HandleForceSpeedChangeAck(WorldPackets::Movement::MovementSpeedAck& packet) { - OpcodeClient opcode = packet.GetOpcode(); - GetPlayer()->ValidateMovementInfo(&packet.movementInfo); + GetPlayer()->ValidateMovementInfo(&packet.Ack.movementInfo); // now can skip not our packet - if (_player->GetGUID() != packet.movementInfo.guid) - { + if (_player->GetGUID() != packet.Ack.movementInfo.guid) return; - } /*----------------*/ @@ -421,6 +417,7 @@ void WorldSession::HandleForceSpeedChangeAck(WorldPackets::Movement::MovementSpe "PitchRate" }; + OpcodeClient opcode = packet.GetOpcode(); switch (opcode) { @@ -480,14 +477,14 @@ void WorldSession::HandleMountSpecialAnimOpcode(WorldPacket& /*recvData*/) GetPlayer()->SendMessageToSet(&data, false); } -void WorldSession::HandleMoveKnockBackAck(WorldPackets::Movement::MovementAck& movementAck) +void WorldSession::HandleMoveKnockBackAck(WorldPackets::Movement::MovementAckMessage& movementAck) { - GetPlayer()->ValidateMovementInfo(&movementAck.movementInfo); + GetPlayer()->ValidateMovementInfo(&movementAck.Ack.movementInfo); - if (_player->m_mover->GetGUID() != movementAck.movementInfo.guid) + if (_player->m_mover->GetGUID() != movementAck.Ack.movementInfo.guid) return; - _player->m_movementInfo = movementAck.movementInfo; + _player->m_movementInfo = movementAck.Ack.movementInfo; WorldPackets::Movement::MoveUpdateKnockBack updateKnockBack; updateKnockBack.movementInfo = &_player->m_movementInfo; @@ -533,10 +530,7 @@ void WorldSession::HandleSummonResponseOpcode(WorldPacket& recvData) _player->SummonIfPossible(agree); } -void WorldSession::HandleSetCollisionHeightAck(WorldPacket& recvPacket) +void WorldSession::HandleSetCollisionHeightAck(WorldPackets::Movement::MoveSetCollisionHeightAck& setCollisionHeightAck) { - static MovementStatusElements const heightElement = MSEExtraFloat; - Movement::ExtraMovementStatusElement extra(&heightElement); - MovementInfo movementInfo; - GetPlayer()->ValidateMovementInfo(&movementInfo); + GetPlayer()->ValidateMovementInfo(&setCollisionHeightAck.Data.movementInfo); } diff --git a/src/server/game/Handlers/VehicleHandler.cpp b/src/server/game/Handlers/VehicleHandler.cpp index fa4027eb3f9..54d574f31c4 100644 --- a/src/server/game/Handlers/VehicleHandler.cpp +++ b/src/server/game/Handlers/VehicleHandler.cpp @@ -22,7 +22,6 @@ #include "Player.h" #include "Log.h" #include "ObjectAccessor.h" -#include "MovementStructures.h" void WorldSession::HandleDismissControlledVehicle(WorldPacket &recvData) { @@ -74,34 +73,12 @@ void WorldSession::HandleChangeSeatsOnControlledVehicle(WorldPacket& recvData) break; case CMSG_MOVE_CHANGE_VEHICLE_SEATS: { - static MovementStatusElements const accessoryGuid[] = - { - MSEExtraInt8, - MSEHasGuidByte2, - MSEHasGuidByte4, - MSEHasGuidByte7, - MSEHasGuidByte6, - MSEHasGuidByte5, - MSEHasGuidByte0, - MSEHasGuidByte1, - MSEHasGuidByte3, - MSEGuidByte6, - MSEGuidByte1, - MSEGuidByte2, - MSEGuidByte5, - MSEGuidByte3, - MSEGuidByte0, - MSEGuidByte4, - MSEGuidByte7, - }; - - Movement::ExtraMovementStatusElement extra(accessoryGuid); MovementInfo movementInfo; GetPlayer()->ValidateMovementInfo(&movementInfo); vehicle_base->m_movementInfo = movementInfo; - ObjectGuid accessory = extra.Data.guid; - int8 seatId = extra.Data.byteData; + ObjectGuid accessory; // = extra.Data.guid; + int8 seatId = -1;//extra.Data.byteData; if (vehicle_base->GetGUID() != movementInfo.guid) return; diff --git a/src/server/game/Movement/MovementStructures.cpp b/src/server/game/Movement/MovementStructures.cpp deleted file mode 100644 index 4156d7e454d..00000000000 --- a/src/server/game/Movement/MovementStructures.cpp +++ /dev/null @@ -1,5453 +0,0 @@ -/* - * Copyright (C) 2008-2015 TrinityCore <http://www.trinitycore.org/> - * Copyright (C) 2005-2009 MaNGOS <http://getmangos.com/> - * - * 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 <http://www.gnu.org/licenses/>. - */ - -#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<OpcodeServer>(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<OpcodeServer>(NULL_OPCODE)) - { - WorldPacket data(_selfOpcode); - _unit->WriteMovementInfo(data, _extraElements); - player->SendDirectMessage(&data); - } - } - - if (_broadcast != static_cast<OpcodeServer>(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_CHANGE_VEHICLE_SEATS: - return ChangeSeatsOnControlledVehicle; - case CMSG_MOVE_CHANGE_TRANSPORT: - return MoveChngTransport; - case CMSG_MOVE_SPLINE_DONE: - return MoveSplineDone; - case CMSG_MOVE_NOT_ACTIVE_MOVER: - return MoveNotActiveMover; - case CMSG_MOVE_DISMISS_VEHICLE: - return DismissControlledVehicle; - case SMSG_MOVE_UPDATE_TELEPORT: - return MoveUpdateTeleport; - case CMSG_MOVE_FORCE_ROOT_ACK: - return ForceMoveRootAck; - case CMSG_MOVE_FORCE_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_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_SET_WATER_WALK: - return MoveWaterWalk; - case SMSG_MOVE_SET_LAND_WALK: - return MoveLandWalk; - case SMSG_MOVE_SET_FEATHER_FALL: - return MoveFeatherFall; - case SMSG_MOVE_SET_NORMAL_FALL: - return MoveNormalFall; - case SMSG_MOVE_ROOT: - return MoveRoot; - case SMSG_MOVE_UNROOT: - return MoveUnroot; - case CMSG_CAST_SPELL: - case CMSG_PET_CAST_SPELL: - case CMSG_USE_ITEM: - return CastSpellEmbeddedMovement; - */ - default: - break; - } - - return NULL; -} diff --git a/src/server/game/Movement/MovementStructures.h b/src/server/game/Movement/MovementStructures.h deleted file mode 100644 index 9b54c6fc5a0..00000000000 --- a/src/server/game/Movement/MovementStructures.h +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Copyright (C) 2008-2015 TrinityCore <http://www.trinitycore.org/> - * Copyright (C) 2005-2009 MaNGOS <http://getmangos.com/> - * - * 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 <http://www.gnu.org/licenses/>. - */ - -#ifndef _MOVEMENT_STRUCTURES_H -#define _MOVEMENT_STRUCTURES_H - -#include "Opcodes.h" -#include "Object.h" - -class ByteBuffer; -class Unit; - -enum MovementStatusElements -{ - MSEHasGuidByte0, - MSEHasGuidByte1, - MSEHasGuidByte2, - MSEHasGuidByte3, - MSEHasGuidByte4, - MSEHasGuidByte5, - MSEHasGuidByte6, - MSEHasGuidByte7, - MSEHasMovementFlags, - MSEHasMovementFlags2, - MSEHasTimestamp, - MSEHasOrientation, - MSEHasTransportData, - MSEHasTransportGuidByte0, - MSEHasTransportGuidByte1, - MSEHasTransportGuidByte2, - MSEHasTransportGuidByte3, - MSEHasTransportGuidByte4, - MSEHasTransportGuidByte5, - MSEHasTransportGuidByte6, - MSEHasTransportGuidByte7, - MSEHasTransportPrevTime, - MSEHasTransportVehicleId, - MSEHasPitch, - MSEHasFallData, - MSEHasFallDirection, - MSEHasSplineElevation, - MSEHasSpline, - - MSEGuidByte0, - MSEGuidByte1, - MSEGuidByte2, - MSEGuidByte3, - MSEGuidByte4, - MSEGuidByte5, - MSEGuidByte6, - MSEGuidByte7, - MSEMovementFlags, - MSEMovementFlags2, - MSETimestamp, - MSEPositionX, - MSEPositionY, - MSEPositionZ, - MSEOrientation, - MSETransportGuidByte0, - MSETransportGuidByte1, - MSETransportGuidByte2, - MSETransportGuidByte3, - MSETransportGuidByte4, - MSETransportGuidByte5, - MSETransportGuidByte6, - MSETransportGuidByte7, - MSETransportPositionX, - MSETransportPositionY, - MSETransportPositionZ, - MSETransportOrientation, - MSETransportSeat, - MSETransportTime, - MSETransportPrevTime, - MSETransportVehicleId, - MSEPitch, - MSEFallTime, - MSEFallVerticalSpeed, - MSEFallCosAngle, - MSEFallSinAngle, - MSEFallHorizontalSpeed, - MSESplineElevation, - - MSECounter, - - // Special - MSEZeroBit, // writes bit value 1 or skips read bit - MSEOneBit, // writes bit value 0 or skips read bit - MSEEnd, // marks end of parsing - MSEExtraElement, // Used to signalize reading into ExtraMovementStatusElement, element sequence inside it is declared as separate array - // Allowed internal elements are: GUID markers (not transport), MSEExtraFloat, MSEExtraInt8 - MSEExtraFloat, - MSEExtraInt8, -}; - -namespace Movement -{ - class PacketSender; - - class ExtraMovementStatusElement - { - friend class PacketSender; - - public: - ExtraMovementStatusElement(MovementStatusElements const* elements) : _elements(elements), _index(0) { } - - void ReadNextElement(ByteBuffer& packet); - void WriteNextElement(ByteBuffer& packet); - - struct - { - ObjectGuid guid; - float floatData; - int8 byteData; - } Data; - - protected: - void ResetIndex() { _index = 0; } - - private: - MovementStatusElements const* _elements; - uint32 _index; - }; - - class PacketSender - { - public: - PacketSender(Unit* unit, OpcodeServer serverControl, OpcodeServer playerControl, OpcodeServer broadcast = SMSG_MOVE_UPDATE, ExtraMovementStatusElement* extras = NULL); - - void Send() const; - - private: - ExtraMovementStatusElement* _extraElements; - Unit* _unit; - OpcodeServer _selfOpcode; - OpcodeServer _broadcast; - }; - - bool PrintInvalidSequenceElement(MovementStatusElements element, char const* function); -} - -MovementStatusElements const* GetMovementStatusElementsSequence(uint32 opcode); - -#endif diff --git a/src/server/game/Server/Packets/MovementPackets.cpp b/src/server/game/Server/Packets/MovementPackets.cpp index 0733bc5dbc0..b74406ac97a 100644 --- a/src/server/game/Server/Packets/MovementPackets.cpp +++ b/src/server/game/Server/Packets/MovementPackets.cpp @@ -597,16 +597,21 @@ void WorldPackets::Movement::MoveTeleportAck::Read() _worldPacket >> MoveTime; } -void WorldPackets::Movement::MovementAck::Read() +ByteBuffer operator>>(ByteBuffer& data, WorldPackets::Movement::MovementAck& ack) { - _worldPacket >> movementInfo; - _worldPacket >> AckIndex; + data >> ack.movementInfo; + data >> ack.AckIndex; + return data; +} + +void WorldPackets::Movement::MovementAckMessage::Read() +{ + _worldPacket >> Ack; } void WorldPackets::Movement::MovementSpeedAck::Read() { - _worldPacket >> movementInfo; - _worldPacket >> AckIndex; + _worldPacket >> Ack; _worldPacket >> Speed; } @@ -628,3 +633,32 @@ WorldPacket const* WorldPackets::Movement::MoveUpdateKnockBack::Write() return &_worldPacket; } + +WorldPacket const* WorldPackets::Movement::MoveSetCollisionHeight::Write() +{ + _worldPacket << MoverGUID; + _worldPacket << uint32(SequenceIndex); + _worldPacket << float(Height); + _worldPacket << float(Scale); + _worldPacket << uint32(MountDisplayID); + _worldPacket.WriteBits(Reason, 2); + + return &_worldPacket; +} + +WorldPacket const* WorldPackets::Movement::MoveUpdateCollisionHeight::Write() +{ + _worldPacket << *movementInfo; + _worldPacket << float(Scale); + _worldPacket << float(Height); + + return &_worldPacket; +} + +void WorldPackets::Movement::MoveSetCollisionHeightAck::Read() +{ + _worldPacket >> Data; + _worldPacket >> Height; + _worldPacket >> MountDisplayID; + Reason = UpdateCollisionHeightReason(_worldPacket.ReadBits(2)); +} diff --git a/src/server/game/Server/Packets/MovementPackets.h b/src/server/game/Server/Packets/MovementPackets.h index 139f6077b0a..3b8479076eb 100644 --- a/src/server/game/Server/Packets/MovementPackets.h +++ b/src/server/game/Server/Packets/MovementPackets.h @@ -286,15 +286,20 @@ namespace WorldPackets int32 MoveTime = 0; }; - class MovementAck final : public ClientPacket + struct MovementAck + { + MovementInfo movementInfo; + int32 AckIndex = 0; + }; + + class MovementAckMessage final : public ClientPacket { public: - MovementAck(WorldPacket&& packet) : ClientPacket(std::move(packet)) { } + MovementAckMessage(WorldPacket&& packet) : ClientPacket(std::move(packet)) { } void Read() override; - MovementInfo movementInfo; - int32 AckIndex = 0; + MovementAck Ack; }; class MovementSpeedAck final : public ClientPacket @@ -304,8 +309,7 @@ namespace WorldPackets void Read() override; - MovementInfo movementInfo; - int32 AckIndex = 0; + MovementAck Ack; float Speed = 0.0f; }; @@ -338,6 +342,53 @@ namespace WorldPackets MovementInfo* movementInfo = nullptr; }; + + enum UpdateCollisionHeightReason : uint8 + { + UPDATE_COLLISION_HEIGHT_SCALE = 0, + UPDATE_COLLISION_HEIGHT_MOUNT = 1, + UPDATE_COLLISION_HEIGHT_FORCE = 2 + }; + + class MoveSetCollisionHeight final : public ServerPacket + { + public: + MoveSetCollisionHeight() : ServerPacket(SMSG_MOVE_SET_COLLISION_HEIGHT, 4 + 16 + 4 + 1 + 4 + 4) { } + + WorldPacket const* Write() override; + + float Scale = 1.0f; + ObjectGuid MoverGUID; + uint32 MountDisplayID = 0; + UpdateCollisionHeightReason Reason = UPDATE_COLLISION_HEIGHT_MOUNT; + uint32 SequenceIndex = 0; + float Height = 1.0f; + }; + + class MoveUpdateCollisionHeight final : public ServerPacket + { + public: + MoveUpdateCollisionHeight() : ServerPacket(SMSG_MOVE_UPDATE_COLLISION_HEIGHT) { } + + WorldPacket const* Write() override; + + MovementInfo* movementInfo = nullptr; + float Scale = 1.0f; + float Height = 1.0f; + }; + + class MoveSetCollisionHeightAck final : public ClientPacket + { + public: + MoveSetCollisionHeightAck(WorldPacket&& packet) : ClientPacket(CMSG_MOVE_SET_COLLISION_HEIGHT_ACK, std::move(packet)) { } + + void Read() override; + + MovementAck Data; + UpdateCollisionHeightReason Reason = UPDATE_COLLISION_HEIGHT_MOUNT; + uint32 MountDisplayID = 0; + float Height = 1.0f; + }; } ByteBuffer& operator<<(ByteBuffer& data, Movement::MonsterSplineFilterKey const& monsterSplineFilterKey); diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index b2ef7123ef8..15ca609368d 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -535,12 +535,12 @@ void OpcodeTable::Initialize() DEFINE_HANDLER(CMSG_MOVE_HEARTBEAT, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes); DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_HOVER_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::HandleMoveHoverAck ); DEFINE_HANDLER(CMSG_MOVE_JUMP, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes); - DEFINE_HANDLER(CMSG_MOVE_KNOCK_BACK_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::MovementAck, &WorldSession::HandleMoveKnockBackAck); + DEFINE_HANDLER(CMSG_MOVE_KNOCK_BACK_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::MovementAckMessage, &WorldSession::HandleMoveKnockBackAck); DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_REMOVE_MOVEMENT_FORCES, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL ); DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_REMOVE_MOVEMENT_FORCE_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL ); DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SET_CAN_FLY_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::HandleMoveSetCanFlyAckOpcode ); DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SET_CAN_TURN_WHILE_FALLING_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL ); - DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SET_COLLISION_HEIGHT_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::HandleSetCollisionHeightAck ); + DEFINE_HANDLER(CMSG_MOVE_SET_COLLISION_HEIGHT_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::MoveSetCollisionHeightAck, &WorldSession::HandleSetCollisionHeightAck); DEFINE_HANDLER(CMSG_MOVE_SET_FACING, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes); DEFINE_HANDLER(CMSG_MOVE_SET_FLY, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes); DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SET_IGNORE_MOVEMENT_FORCES_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL ); @@ -1321,26 +1321,26 @@ void OpcodeTable::Initialize() DEFINE_SERVER_OPCODE_HANDLER(SMSG_MODIFY_COOLDOWN, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOTD, STATUS_NEVER, CONNECTION_TYPE_REALM); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOUNT_RESULT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_APPLY_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_DISABLE_COLLISION, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_APPLY_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_DISABLE_COLLISION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_DISABLE_GRAVITY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_DISABLE_TRANSITION_BETWEEN_SWIM_AND_FLY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ENABLE_COLLISION, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_DISABLE_TRANSITION_BETWEEN_SWIM_AND_FLY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ENABLE_COLLISION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ENABLE_GRAVITY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ENABLE_TRANSITION_BETWEEN_SWIM_AND_FLY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_KNOCK_BACK, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_REMOVE_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ROOT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ACTIVE_MOVER, STATUS_NEVER, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ENABLE_TRANSITION_BETWEEN_SWIM_AND_FLY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_KNOCK_BACK, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_REMOVE_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_ROOT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ACTIVE_MOVER, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_CAN_FLY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_CAN_TURN_WHILE_FALLING, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_COLLISION_HEIGHT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_COMPOUND_STATE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_CAN_TURN_WHILE_FALLING, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_COLLISION_HEIGHT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_COMPOUND_STATE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_FEATHER_FALL, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_FLIGHT_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_FLIGHT_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_HOVERING, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_IGNORE_MOVEMENT_FORCES, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_IGNORE_MOVEMENT_FORCES, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_LAND_WALK, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_NORMAL_FALL, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_PITCH_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); @@ -1349,15 +1349,15 @@ void OpcodeTable::Initialize() DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_SWIM_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_SWIM_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_TURN_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_VEHICLE_REC_ID, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_VEHICLE_REC_ID, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_WALK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_WATER_WALK, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SKIP_TIME, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SKIP_TIME, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_DISABLE_COLLISION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_DISABLE_GRAVITY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_ENABLE_COLLISION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_ENABLE_GRAVITY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_ROOT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_ROOT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_FEATHER_FALL, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_FLIGHT_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_FLIGHT_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); @@ -1367,33 +1367,33 @@ void OpcodeTable::Initialize() DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_NORMAL_FALL, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_PITCH_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_RUN_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_RUN_MODE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_RUN_MODE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_RUN_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_SWIM_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_SWIM_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_TURN_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_WALK_MODE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_WALK_SPEED, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_WALK_MODE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_WALK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_SET_WATER_WALK, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_START_SWIM, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_STOP_SWIM, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_UNROOT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_UNROOT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_UNSET_FLYING, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SPLINE_UNSET_HOVER, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_TELEPORT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNROOT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNROOT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNSET_CAN_FLY, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNSET_CAN_TURN_WHILE_FALLING, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNSET_CAN_TURN_WHILE_FALLING, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNSET_HOVERING, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNSET_IGNORE_MOVEMENT_FORCES, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UNSET_IGNORE_MOVEMENT_FORCES, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_APPLY_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_COLLISION_HEIGHT, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_APPLY_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_COLLISION_HEIGHT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_FLIGHT_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_FLIGHT_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_KNOCK_BACK, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_PITCH_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_REMOVE_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_REMOVE_MOVEMENT_FORCE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_RUN_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_RUN_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_UPDATE_SWIM_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index da101654eec..f4faa7a3b11 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -296,9 +296,10 @@ namespace WorldPackets class ClientPlayerMovement; class WorldPortResponse; class MoveTeleportAck; - class MovementAck; + class MovementAckMessage; class MovementSpeedAck; class SetActiveMover; + class MoveSetCollisionHeightAck; } namespace NPC @@ -863,11 +864,11 @@ class WorldSession void HandleRepairItemOpcode(WorldPackets::Item::RepairItem& packet); // Knockback - void HandleMoveKnockBackAck(WorldPackets::Movement::MovementAck& movementAck); + void HandleMoveKnockBackAck(WorldPackets::Movement::MovementAckMessage& movementAck); void HandleMoveTeleportAck(WorldPackets::Movement::MoveTeleportAck& packet); void HandleForceSpeedChangeAck(WorldPackets::Movement::MovementSpeedAck& packet); - void HandleSetCollisionHeightAck(WorldPacket& recvPacket); + void HandleSetCollisionHeightAck(WorldPackets::Movement::MoveSetCollisionHeightAck& setCollisionHeightAck); void HandlePingOpcode(WorldPacket& recvPacket); void HandleRepopRequest(WorldPackets::Misc::RepopRequest& packet); |