aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/MovementHandler.cpp
diff options
context:
space:
mode:
authorOvahlord <dreadkiller@gmx.de>2024-04-26 02:22:24 +0200
committerOvahlord <dreadkiller@gmx.de>2024-05-28 16:45:03 +0200
commit69778a441411f073e8e1a959e8456d4178483c52 (patch)
treebd8f00eec9730a6baf4985bf6ef410f83ccd587d /src/server/game/Handlers/MovementHandler.cpp
parentf7ea6f55dcdc0db8b8826f40cb59e584a1a99a48 (diff)
Core/Player: moved indoors/outdoors aura interrupting mechanic into heartbeat and movement handling
(cherry picked from commit 5a169f6eae45a7578d6e312cdba9825f6fc24fa5)
Diffstat (limited to 'src/server/game/Handlers/MovementHandler.cpp')
-rw-r--r--src/server/game/Handlers/MovementHandler.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp
index 13f440e9c29..00a9582fbfa 100644
--- a/src/server/game/Handlers/MovementHandler.cpp
+++ b/src/server/game/Handlers/MovementHandler.cpp
@@ -466,6 +466,23 @@ void WorldSession::HandleMovementOpcode(OpcodeClient opcode, MovementInfo& movem
plrMover->RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::Jump);
Unit::ProcSkillsAndAuras(plrMover, nullptr, PROC_FLAG_JUMP, PROC_FLAG_NONE, PROC_SPELL_TYPE_MASK_ALL, PROC_SPELL_PHASE_NONE, PROC_HIT_NONE, nullptr, nullptr, nullptr);
}
+
+ // Whenever a player stops a movement action, an indoor/outdoor check is being performed
+ switch (opcode)
+ {
+ case CMSG_MOVE_SET_FLY:
+ case CMSG_MOVE_FALL_LAND:
+ case CMSG_MOVE_STOP:
+ case CMSG_MOVE_STOP_STRAFE:
+ case CMSG_MOVE_STOP_TURN:
+ case CMSG_MOVE_STOP_SWIM:
+ case CMSG_MOVE_STOP_PITCH:
+ case CMSG_MOVE_STOP_ASCEND:
+ plrMover->CheckOutdoorsAuraRequirements();
+ break;
+ default:
+ break;
+ }
}
}