From a667d723bf18ffba9b7b25c4fff1223d23e55524 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 10 Sep 2023 11:54:09 +0200 Subject: Core/Pets: Improved pet despawn behavior when mounting * Pets will now only be despawned when starting to fly * Fixed crash when summoning a pet that is different than the one that was despawned by flying Closes #29303 --- src/server/game/Handlers/MovementHandler.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/server/game/Handlers/MovementHandler.cpp') diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp index 6f9dfa69337..103daba53d3 100644 --- a/src/server/game/Handlers/MovementHandler.cpp +++ b/src/server/game/Handlers/MovementHandler.cpp @@ -401,6 +401,9 @@ void WorldSession::HandleMovementOpcode(OpcodeClient opcode, MovementInfo& movem if (opcode == CMSG_MOVE_FALL_LAND || opcode == CMSG_MOVE_START_SWIM || opcode == CMSG_MOVE_SET_FLY) mover->RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags::LandingOrFlight); // Parachutes + if (opcode == CMSG_MOVE_SET_FLY || opcode == CMSG_MOVE_SET_ADV_FLY) + _player->UnsummonPetTemporaryIfAny(); // always do the pet removal on current client activeplayer only + /* process position-change */ movementInfo.guid = mover->GetGUID(); movementInfo.time = AdjustClientMovementTime(movementInfo.time); -- cgit v1.2.3