diff options
author | Ovahlord <dreadkiller@gmx.de> | 2024-10-12 23:56:39 +0200 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-10-12 23:56:39 +0200 |
commit | 78671afa54bb5f48d0aa13c500aa905a8e85e457 (patch) | |
tree | 0363b8f82ff84593cf66fb01d69b8c06fb224c8f /src | |
parent | 35abb5c2465e37d89edeae5b8d69cd444ea8d907 (diff) |
Revert "Core/Movement: Store adv flying speeds instead of hardcoding them in SMSG_UPDATE_OBJECT and enable packets modifying them"
This reverts commit 7c425b8970e0066b16d2b3f5f1ddc76807a5f730.
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Object/Object.cpp | 34 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 117 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.h | 9 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/UnitDefines.h | 23 | ||||
-rw-r--r-- | src/server/game/Handlers/MovementHandler.cpp | 10 | ||||
-rw-r--r-- | src/server/game/Server/Packets/MovementPackets.cpp | 24 | ||||
-rw-r--r-- | src/server/game/Server/Packets/MovementPackets.h | 37 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 52 | ||||
-rw-r--r-- | src/server/game/Server/WorldSession.h | 3 |
9 files changed, 43 insertions, 266 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 0ad4d0c8970..60485881c64 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -372,23 +372,23 @@ void Object::BuildMovementUpdate(ByteBuffer* data, CreateObjectBits flags, Playe *data << float(1.0f); // MovementForcesModMagnitude } - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_AIR_FRICTION)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_MAX_VEL)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_LIFT_COEFFICIENT)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_DOUBLE_JUMP_VEL_MOD)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_GLIDE_START_MIN_HEIGHT)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_ADD_IMPULSE_MAX_SPEED)); - *data << float(unit->GetAdvFlyingSpeedMin(ADV_FLYING_BANKING_RATE)); - *data << float(unit->GetAdvFlyingSpeedMax(ADV_FLYING_BANKING_RATE)); - *data << float(unit->GetAdvFlyingSpeedMin(ADV_FLYING_PITCHING_RATE_DOWN)); - *data << float(unit->GetAdvFlyingSpeedMax(ADV_FLYING_PITCHING_RATE_DOWN)); - *data << float(unit->GetAdvFlyingSpeedMin(ADV_FLYING_PITCHING_RATE_UP)); - *data << float(unit->GetAdvFlyingSpeedMax(ADV_FLYING_PITCHING_RATE_UP)); - *data << float(unit->GetAdvFlyingSpeedMin(ADV_FLYING_TURN_VELOCITY_THRESHOLD)); - *data << float(unit->GetAdvFlyingSpeedMax(ADV_FLYING_TURN_VELOCITY_THRESHOLD)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_SURFACE_FRICTION)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_OVER_MAX_DECELERATION)); - *data << float(unit->GetAdvFlyingSpeed(ADV_FLYING_LAUNCH_SPEED_COEFFICIENT)); + *data << float(2.0f); // advFlyingAirFriction + *data << float(65.0f); // advFlyingMaxVel + *data << float(1.0f); // advFlyingLiftCoefficient + *data << float(3.0f); // advFlyingDoubleJumpVelMod + *data << float(10.0f); // advFlyingGlideStartMinHeight + *data << float(100.0f); // advFlyingAddImpulseMaxSpeed + *data << float(90.0f); // advFlyingMinBankingRate + *data << float(140.0f); // advFlyingMaxBankingRate + *data << float(180.0f); // advFlyingMinPitchingRateDown + *data << float(360.0f); // advFlyingMaxPitchingRateDown + *data << float(90.0f); // advFlyingMinPitchingRateUp + *data << float(270.0f); // advFlyingMaxPitchingRateUp + *data << float(30.0f); // advFlyingMinTurnVelocityThreshold + *data << float(80.0f); // advFlyingMaxTurnVelocityThreshold + *data << float(2.75f); // advFlyingSurfaceFriction + *data << float(7.0f); // advFlyingOverMaxDeceleration + *data << float(0.4f); // advFlyingLaunchSpeedCoefficient data->WriteBit(HasSpline); data->FlushBits(); diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index de3f7122f9e..d4fe5b2002e 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -365,7 +365,6 @@ Unit::Unit(bool isWorldObject) : m_baseSpellCritChance = 5.0f; m_speed_rate.fill(1.0f); - SetFlightCapabilityID(0, false); // remove aurastates allowing special moves m_reactiveTimer = { }; @@ -8767,122 +8766,6 @@ void Unit::SetSpeedRate(UnitMoveType mtype, float rate) } } -void Unit::SetFlightCapabilityID(int32 flightCapabilityId, bool clientUpdate) -{ - if (flightCapabilityId && !sFlightCapabilityStore.HasRecord(flightCapabilityId)) - return; - - SetUpdateFieldValue(m_values.ModifyValue(&Unit::m_unitData).ModifyValue(&UF::UnitData::FlightCapabilityID), flightCapabilityId); - - UpdateAdvFlyingSpeed(ADV_FLYING_AIR_FRICTION, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_MAX_VEL, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_LIFT_COEFFICIENT, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_DOUBLE_JUMP_VEL_MOD, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_GLIDE_START_MIN_HEIGHT, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_ADD_IMPULSE_MAX_SPEED, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_BANKING_RATE, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_PITCHING_RATE_DOWN, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_PITCHING_RATE_UP, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_TURN_VELOCITY_THRESHOLD, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_SURFACE_FRICTION, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_OVER_MAX_DECELERATION, clientUpdate); - UpdateAdvFlyingSpeed(ADV_FLYING_LAUNCH_SPEED_COEFFICIENT, clientUpdate); -} - -void Unit::UpdateAdvFlyingSpeed(AdvFlyingRateTypeSingle speedType, bool clientUpdate) -{ - FlightCapabilityEntry const* flightCapabilityEntry = sFlightCapabilityStore.LookupEntry(GetFlightCapabilityID()); - if (!flightCapabilityEntry) - flightCapabilityEntry = sFlightCapabilityStore.AssertEntry(1); - - auto [opcode, newValue] = [&] - { - switch (speedType) - { - case ADV_FLYING_AIR_FRICTION: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_AIR_FRICTION, flightCapabilityEntry->AirFriction); - case ADV_FLYING_MAX_VEL: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_MAX_VEL, flightCapabilityEntry->MaxVel); - case ADV_FLYING_LIFT_COEFFICIENT: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_LIFT_COEFFICIENT, flightCapabilityEntry->LiftCoefficient); - case ADV_FLYING_DOUBLE_JUMP_VEL_MOD: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_DOUBLE_JUMP_VEL_MOD, flightCapabilityEntry->DoubleJumpVelMod); - case ADV_FLYING_GLIDE_START_MIN_HEIGHT: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_GLIDE_START_MIN_HEIGHT, flightCapabilityEntry->GlideStartMinHeight); - case ADV_FLYING_ADD_IMPULSE_MAX_SPEED: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_ADD_IMPULSE_MAX_SPEED, flightCapabilityEntry->AddImpulseMaxSpeed); - case ADV_FLYING_SURFACE_FRICTION: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_SURFACE_FRICTION, flightCapabilityEntry->SurfaceFriction); - case ADV_FLYING_OVER_MAX_DECELERATION: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_OVER_MAX_DECELERATION, flightCapabilityEntry->OverMaxDeceleration); - case ADV_FLYING_LAUNCH_SPEED_COEFFICIENT: - return std::pair(SMSG_MOVE_SET_ADV_FLYING_LAUNCH_SPEED_COEFFICIENT, flightCapabilityEntry->LaunchSpeedCoefficient); - default: - return std::pair<OpcodeServer, float>(); - } - }(); - - if (m_advFlyingSpeed[speedType] == newValue) - return; - - m_advFlyingSpeed[speedType] = newValue; - - if (!clientUpdate) - return; - - if (Player* playerMover = Unit::ToPlayer(GetUnitBeingMoved())) - { - WorldPackets::Movement::SetAdvFlyingSpeed selfpacket(opcode); - selfpacket.MoverGUID = GetGUID(); - selfpacket.SequenceIndex = m_movementCounter++; - selfpacket.Speed = newValue; - playerMover->GetSession()->SendPacket(selfpacket.Write()); - } -} - -void Unit::UpdateAdvFlyingSpeed(AdvFlyingRateTypeRange speedType, bool clientUpdate) -{ - FlightCapabilityEntry const* flightCapabilityEntry = sFlightCapabilityStore.LookupEntry(GetFlightCapabilityID()); - if (!flightCapabilityEntry) - flightCapabilityEntry = sFlightCapabilityStore.AssertEntry(1); - - auto [opcode, min, max] = [&] - { - switch (speedType) - { - case ADV_FLYING_BANKING_RATE: - return std::tuple(SMSG_MOVE_SET_ADV_FLYING_BANKING_RATE, flightCapabilityEntry->BankingRateMin, flightCapabilityEntry->BankingRateMax); - case ADV_FLYING_PITCHING_RATE_DOWN: - return std::tuple(SMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_DOWN, flightCapabilityEntry->PitchingRateDownMin, flightCapabilityEntry->PitchingRateDownMax); - case ADV_FLYING_PITCHING_RATE_UP: - return std::tuple(SMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_UP, flightCapabilityEntry->PitchingRateUpMin, flightCapabilityEntry->PitchingRateUpMax); - case ADV_FLYING_TURN_VELOCITY_THRESHOLD: - return std::tuple(SMSG_MOVE_SET_ADV_FLYING_TURN_VELOCITY_THRESHOLD, flightCapabilityEntry->TurnVelocityThresholdMin, flightCapabilityEntry->TurnVelocityThresholdMax); - default: - return std::tuple<OpcodeServer, float, float>(); - } - }(); - - if (m_advFlyingSpeed[speedType] == min && m_advFlyingSpeed[speedType + 1] == max) - return; - - m_advFlyingSpeed[speedType] = min; - m_advFlyingSpeed[speedType + 1] = max; - - if (!clientUpdate) - return; - - if (Player* playerMover = Unit::ToPlayer(GetUnitBeingMoved())) - { - WorldPackets::Movement::SetAdvFlyingSpeedRange selfpacket(opcode); - selfpacket.MoverGUID = GetGUID(); - selfpacket.SequenceIndex = m_movementCounter++; - selfpacket.SpeedMin = min; - selfpacket.SpeedMax = max; - playerMover->GetSession()->SendPacket(selfpacket.Write()); - } -} - void Unit::RemoveAllFollowers() { while (!m_followingMe.empty()) diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 44b13d5d928..2a1f308d9af 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1649,14 +1649,6 @@ class TC_GAME_API Unit : public WorldObject void SetSpeed(UnitMoveType mtype, float newValue); void SetSpeedRate(UnitMoveType mtype, float rate); - int32 GetFlightCapabilityID() const { return m_unitData->FlightCapabilityID; } - void SetFlightCapabilityID(int32 flightCapabilityId, bool clientUpdate); - float GetAdvFlyingSpeed(AdvFlyingRateTypeSingle speedType) const { return m_advFlyingSpeed[speedType]; } - float GetAdvFlyingSpeedMin(AdvFlyingRateTypeRange speedType) const { return m_advFlyingSpeed[speedType]; } - float GetAdvFlyingSpeedMax(AdvFlyingRateTypeRange speedType) const { return m_advFlyingSpeed[speedType + 1]; } - void UpdateAdvFlyingSpeed(AdvFlyingRateTypeSingle speedType, bool clientUpdate); - void UpdateAdvFlyingSpeed(AdvFlyingRateTypeRange speedType, bool clientUpdate); - void FollowerAdded(AbstractFollower* f) { m_followingMe.insert(f); } void FollowerRemoved(AbstractFollower* f) { m_followingMe.erase(f); } void RemoveAllFollowers(); @@ -1911,7 +1903,6 @@ class TC_GAME_API Unit : public WorldObject Trinity::Containers::FlatSet<AuraApplication*, VisibleAuraSlotCompare> m_visibleAurasToUpdate; std::array<float, MAX_MOVE_TYPE> m_speed_rate; - std::array<float, ADV_FLYING_MAX_SPEED_TYPE> m_advFlyingSpeed; Unit* m_unitMovedByMe; // only ever set for players, and only for direct client control Player* m_playerMovingMe; // only set for direct client control (possess effects, vehicles and similar) diff --git a/src/server/game/Entities/Unit/UnitDefines.h b/src/server/game/Entities/Unit/UnitDefines.h index 9698b3da156..fddafa9cbc5 100644 --- a/src/server/game/Entities/Unit/UnitDefines.h +++ b/src/server/game/Entities/Unit/UnitDefines.h @@ -127,29 +127,6 @@ enum UnitMoveType : uint8 #define MAX_MOVE_TYPE 9 -enum AdvFlyingRateTypeSingle : uint8 -{ - ADV_FLYING_AIR_FRICTION = 0, - ADV_FLYING_MAX_VEL = 1, - ADV_FLYING_LIFT_COEFFICIENT = 2, - ADV_FLYING_DOUBLE_JUMP_VEL_MOD = 3, - ADV_FLYING_GLIDE_START_MIN_HEIGHT = 4, - ADV_FLYING_ADD_IMPULSE_MAX_SPEED = 5, - ADV_FLYING_SURFACE_FRICTION = 14, - ADV_FLYING_OVER_MAX_DECELERATION = 15, - ADV_FLYING_LAUNCH_SPEED_COEFFICIENT = 16 -}; - -enum AdvFlyingRateTypeRange : uint8 -{ - ADV_FLYING_BANKING_RATE = 6, - ADV_FLYING_PITCHING_RATE_DOWN = 8, - ADV_FLYING_PITCHING_RATE_UP = 10, - ADV_FLYING_TURN_VELOCITY_THRESHOLD = 12 -}; - -#define ADV_FLYING_MAX_SPEED_TYPE 17 - enum DamageEffectType : uint8 { DIRECT_DAMAGE = 0, // used for normal weapon damage (not for class abilities or spells) diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp index a9f99997135..568181c68b1 100644 --- a/src/server/game/Handlers/MovementHandler.cpp +++ b/src/server/game/Handlers/MovementHandler.cpp @@ -578,16 +578,6 @@ void WorldSession::HandleForceSpeedChangeAck(WorldPackets::Movement::MovementSpe } } -void WorldSession::HandleSetAdvFlyingSpeedAck(WorldPackets::Movement::MovementSpeedAck& speedAck) -{ - GetPlayer()->ValidateMovementInfo(&speedAck.Ack.Status); -} - -void WorldSession::HandleSetAdvFlyingSpeedRangeAck(WorldPackets::Movement::MovementSpeedRangeAck& speedRangeAck) -{ - GetPlayer()->ValidateMovementInfo(&speedRangeAck.Ack.Status); -} - void WorldSession::HandleSetActiveMoverOpcode(WorldPackets::Movement::SetActiveMover& packet) { if (GetPlayer()->IsInWorld()) diff --git a/src/server/game/Server/Packets/MovementPackets.cpp b/src/server/game/Server/Packets/MovementPackets.cpp index c9f9338cbc8..3105c46b6f9 100644 --- a/src/server/game/Server/Packets/MovementPackets.cpp +++ b/src/server/game/Server/Packets/MovementPackets.cpp @@ -616,23 +616,6 @@ WorldPacket const* WorldPackets::Movement::MoveUpdateSpeed::Write() return &_worldPacket; } -WorldPacket const* WorldPackets::Movement::SetAdvFlyingSpeed::Write() -{ - _worldPacket << MoverGUID; - _worldPacket << uint32(SequenceIndex); - _worldPacket << float(Speed); - return &_worldPacket; -} - -WorldPacket const* WorldPackets::Movement::SetAdvFlyingSpeedRange::Write() -{ - _worldPacket << MoverGUID; - _worldPacket << uint32(SequenceIndex); - _worldPacket << float(SpeedMin); - _worldPacket << float(SpeedMax); - return &_worldPacket; -} - WorldPacket const* WorldPackets::Movement::MoveSplineSetFlag::Write() { _worldPacket << MoverGUID; @@ -821,13 +804,6 @@ void WorldPackets::Movement::MovementSpeedAck::Read() _worldPacket >> Speed; } -void WorldPackets::Movement::MovementSpeedRangeAck::Read() -{ - _worldPacket >> Ack; - _worldPacket >> SpeedMin; - _worldPacket >> SpeedMax; -} - void WorldPackets::Movement::SetActiveMover::Read() { _worldPacket >> ActiveMover; diff --git a/src/server/game/Server/Packets/MovementPackets.h b/src/server/game/Server/Packets/MovementPackets.h index aea8a3fa626..51a0c4c002a 100644 --- a/src/server/game/Server/Packets/MovementPackets.h +++ b/src/server/game/Server/Packets/MovementPackets.h @@ -199,31 +199,6 @@ namespace WorldPackets float Speed = 1.0f; }; - class SetAdvFlyingSpeed final : public ServerPacket - { - public: - explicit SetAdvFlyingSpeed(OpcodeServer opcode) : ServerPacket(opcode, 16 + 4 + 4) { } - - WorldPacket const* Write() override; - - ObjectGuid MoverGUID; - uint32 SequenceIndex = 0; - float Speed = 1.0f; - }; - - class SetAdvFlyingSpeedRange final : public ServerPacket - { - public: - explicit SetAdvFlyingSpeedRange(OpcodeServer opcode) : ServerPacket(opcode, 16 + 4 + 4 + 4) { } - - WorldPacket const* Write() override; - - ObjectGuid MoverGUID; - uint32 SequenceIndex = 0; - float SpeedMin = 1.0f; - float SpeedMax = 1.0f; - }; - class MoveSplineSetFlag final : public ServerPacket { public: @@ -449,18 +424,6 @@ namespace WorldPackets float Speed = 0.0f; }; - class MovementSpeedRangeAck final : public ClientPacket - { - public: - MovementSpeedRangeAck(WorldPacket&& packet) : ClientPacket(std::move(packet)) { } - - void Read() override; - - MovementAck Ack; - float SpeedMin = 1.0f; - float SpeedMax = 1.0f; - }; - class SetActiveMover final : public ClientPacket { public: diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 7bc87365b2c..55249504f6a 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -605,19 +605,19 @@ void OpcodeTable::InitializeClientOpcodes() DEFINE_HANDLER(CMSG_MOVE_REMOVE_MOVEMENT_FORCE_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMoveRemoveMovementForceAck); DEFINE_HANDLER(CMSG_MOVE_SEAMLESS_TRANSFER_COMPLETE, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLY, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_ADD_IMPULSE_MAX_SPEED_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_AIR_FRICTION_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_BANKING_RATE_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedRangeAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_DOUBLE_JUMP_VEL_MOD_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_GLIDE_START_MIN_HEIGHT_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_LAUNCH_SPEED_COEFFICIENT_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_LIFT_COEFFICIENT_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_MAX_VEL_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_OVER_MAX_DECELERATION_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_DOWN_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedRangeAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_UP_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedRangeAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_SURFACE_FRICTION_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedAck); - DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_TURN_VELOCITY_THRESHOLD_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleSetAdvFlyingSpeedRangeAck); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_ADD_IMPULSE_MAX_SPEED_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_AIR_FRICTION_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_BANKING_RATE_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_DOUBLE_JUMP_VEL_MOD_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_GLIDE_START_MIN_HEIGHT_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_LAUNCH_SPEED_COEFFICIENT_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_LIFT_COEFFICIENT_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_MAX_VEL_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_OVER_MAX_DECELERATION_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_DOWN_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_UP_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_SURFACE_FRICTION_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); + DEFINE_HANDLER(CMSG_MOVE_SET_ADV_FLYING_TURN_VELOCITY_THRESHOLD_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_MOVE_SET_CAN_ADV_FLY_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL); DEFINE_HANDLER(CMSG_MOVE_SET_CAN_FLY_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementAckMessage); DEFINE_HANDLER(CMSG_MOVE_SET_CAN_TURN_WHILE_FALLING_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementAckMessage); @@ -1576,19 +1576,19 @@ void OpcodeTable::InitializeServerOpcodes() DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_REMOVE_MOVEMENT_FORCE, STATUS_NEVER, 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_ADV_FLYING_ADD_IMPULSE_MAX_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_AIR_FRICTION, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_BANKING_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_DOUBLE_JUMP_VEL_MOD, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_GLIDE_START_MIN_HEIGHT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_LAUNCH_SPEED_COEFFICIENT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_LIFT_COEFFICIENT, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_MAX_VEL, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_OVER_MAX_DECELERATION, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_DOWN, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_UP, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_SURFACE_FRICTION, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); - DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_TURN_VELOCITY_THRESHOLD, STATUS_NEVER, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_ADD_IMPULSE_MAX_SPEED, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_AIR_FRICTION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_BANKING_RATE, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_DOUBLE_JUMP_VEL_MOD, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_GLIDE_START_MIN_HEIGHT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_LAUNCH_SPEED_COEFFICIENT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_LIFT_COEFFICIENT, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_MAX_VEL, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_OVER_MAX_DECELERATION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_DOWN, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_PITCHING_RATE_UP, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_SURFACE_FRICTION, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); + DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_ADV_FLYING_TURN_VELOCITY_THRESHOLD, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE); DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_CAN_ADV_FLY, STATUS_UNHANDLED, 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_NEVER, CONNECTION_TYPE_INSTANCE); diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index 5488601d134..628428ba656 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -508,7 +508,6 @@ namespace WorldPackets class MoveTeleportAck; class MovementAckMessage; class MovementSpeedAck; - class MovementSpeedRangeAck; class MoveKnockBackAck; class SetActiveMover; class MoveSetCollisionHeightAck; @@ -1215,8 +1214,6 @@ class TC_GAME_API WorldSession void HandleMoveTeleportAck(WorldPackets::Movement::MoveTeleportAck& packet); void HandleForceSpeedChangeAck(WorldPackets::Movement::MovementSpeedAck& packet); - void HandleSetAdvFlyingSpeedAck(WorldPackets::Movement::MovementSpeedAck& speedAck); - void HandleSetAdvFlyingSpeedRangeAck(WorldPackets::Movement::MovementSpeedRangeAck& speedRangeAck); void HandleSetCollisionHeightAck(WorldPackets::Movement::MoveSetCollisionHeightAck& setCollisionHeightAck); // Movement forces |