diff options
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Spells/SpellDefines.h | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index d2488e13cb4..ba8e83a5bf5 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -29199,6 +29199,7 @@ void Player::UpdateWarModeAuras() RemovePlayerFlag(PLAYER_FLAGS_WAR_MODE_ACTIVE); CastSpell(this, auraInside, true); RemoveAurasDueToSpell(auraOutside); + RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::WarModeLeave); } else { @@ -29216,6 +29217,7 @@ void Player::UpdateWarModeAuras() RemoveAurasDueToSpell(auraInside); RemovePlayerFlag(PLAYER_FLAGS_WAR_MODE_ACTIVE); RemovePvpFlag(UNIT_BYTE2_FLAG_PVP); + RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags2::WarModeLeave); } } diff --git a/src/server/game/Spells/SpellDefines.h b/src/server/game/Spells/SpellDefines.h index 30238c6e192..de0cb71c7e1 100644 --- a/src/server/game/Spells/SpellDefines.h +++ b/src/server/game/Spells/SpellDefines.h @@ -133,7 +133,7 @@ enum class SpellAuraInterruptFlags2 : uint32 ChangeTalent = 0x00004000, ChangeGlyph = 0x00008000, SeamlessTransfer = 0x00010000, // NYI - WarModeLeave = 0x00020000, // NYI + WarModeLeave = 0x00020000, // Implemented in Player::UpdateWarModeAuras TouchingGround = 0x00040000, // NYI ChromieTime = 0x00080000, // NYI SplineFlightOrFreeFlight = 0x00100000, // NYI |