aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2012-03-16 23:41:43 +0100
committerMachiavelli <machiavelli.trinity@gmail.com>2012-03-16 23:41:43 +0100
commitcf5ed0a7b6f5597f9103a4bc93ed91f814522a77 (patch)
tree13dd8f11aea216aa3e512cad3e6a19db41a37388 /src
parent85da4636860d1a952bca1b8865c0db9e64798c43 (diff)
Core/Movement: Remove MOVEMENTFLAG_FLYING on fly aura unapply as well as _CAN_FLY
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Spells/Auras/SpellAuraEffects.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 1e0d1e3b08d..9400ec1e798 100755
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -2846,6 +2846,8 @@ void AuraEffect::HandleAuraAllowFlight(AuraApplication const* aurApp, uint8 mode
//! Not entirely sure if this should be sent for creatures as well, but I don't think so.
target->SetCanFly(apply);
+ if (!apply)
+ target->RemoveUnitMovementFlag(MOVEMENTFLAG_FLYING);
Player* player = target->ToPlayer();
if (!player)
player = target->m_movedPlayer;
@@ -3231,6 +3233,8 @@ void AuraEffect::HandleAuraModIncreaseFlightSpeed(AuraApplication const* aurApp,
if (mode & AURA_EFFECT_HANDLE_SEND_FOR_CLIENT_MASK && (apply || (!target->HasAuraType(SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED) && !target->HasAuraType(SPELL_AURA_FLY))))
{
target->SetCanFly(apply);
+ if (!apply)
+ target->RemoveUnitMovementFlag(MOVEMENTFLAG_FLYING);
Player* player = target->ToPlayer();
if (!player)
player = target->m_movedPlayer;