aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/game/SpellEffects.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index ac9eb2d142d..88d5dbcc982 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -3263,8 +3263,9 @@ void Spell::EffectDispel(uint32 i)
if(positive == unitTarget->IsFriendlyTo(m_caster))
continue;
}
- // Add aura to dispel list
- dispel_list.push_back(aur);
+ // Add every aura stack to dispel list
+ for(uint32 stack_amount = 0; stack_amount < aur->GetStackAmount(); ++stack_amount)
+ dispel_list.push_back(aur);
}
}
// Ok if exist some buffs for dispel try dispel it
@@ -3302,6 +3303,7 @@ void Spell::EffectDispel(uint32 i)
{
j = dispel_list.erase(j);
--list_size;
+ break;
}
else
++j;