From 38b5a6c7be25fef3b9b16adc82dfbfaeebd76f53 Mon Sep 17 00:00:00 2001 From: Naios Date: Mon, 22 Oct 2012 20:12:46 +0200 Subject: Core/Spells: On Dismount use the amount to get the MountCapabilityEntry to remove related mount auras #8123 --- src/server/game/Spells/Auras/SpellAuraEffects.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index d70c68b9be2..68e7cd398d0 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -717,7 +717,10 @@ int32 AuraEffect::CalculateAmount(Unit* caster) break; case SPELL_AURA_MOUNTED: if (MountCapabilityEntry const* mountCapability = GetBase()->GetUnitOwner()->GetMountCapability(uint32(GetMiscValueB()))) + { amount = mountCapability->Id; + m_canBeRecalculated = false; + } break; case SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE: { @@ -2809,7 +2812,7 @@ void AuraEffect::HandleAuraMounted(AuraApplication const* aurApp, uint8 mode, bo target->RemoveAurasByType(SPELL_AURA_MOUNTED); // remove speed aura - if (MountCapabilityEntry const* mountCapability = target->GetMountCapability(uint32(GetMiscValueB()))) + if (MountCapabilityEntry const* mountCapability = sMountCapabilityStore.LookupEntry(GetAmount())) target->RemoveAurasDueToSpell(mountCapability->SpeedModSpell, target->GetGUID()); } } -- cgit v1.2.3