diff options
author | Astellar <none@none> | 2010-01-07 23:31:46 +0300 |
---|---|---|
committer | Astellar <none@none> | 2010-01-07 23:31:46 +0300 |
commit | c239c380df53d47b470203896bb72205d1fdc4a3 (patch) | |
tree | 5cd6452fb65b5b542438bf54a4eeaf905c53a432 /src/game/SpellEffects.cpp | |
parent | 7a43ad959f58214153320b9d3b4a40ef6f05e069 (diff) |
Some Fixes for Earth Shield.
Now Dispel and Spellsteal effects will correctly dispel and steal Earth Shield's charges instead of entire aura.
--HG--
branch : trunk
Diffstat (limited to 'src/game/SpellEffects.cpp')
-rw-r--r-- | src/game/SpellEffects.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 6fe1a576838..a39c7adbc77 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -3751,7 +3751,9 @@ void Spell::EffectDispel(uint32 i) continue; } - for (uint8 i = aur->GetStackAmount(); i; --i) + bool dispel_charges = aur->GetSpellProto()->AttributesEx7 & SPELL_ATTR_EX7_DISPEL_CHARGES; + + for (uint8 i = dispel_charges ? aur->GetAuraCharges() : aur->GetStackAmount(); i; --i) dispel_list.push_back(aur); } } |