diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 01d2f7776fa..3ed5f36d46f 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -19677,17 +19677,17 @@ void Player::RemoveSpellMods(Spell * spell) void Player::DropModCharge(SpellModifier * mod, Spell * spell) { - // this mod shouldn't be removed here - if (mod->op == SPELLMOD_CRIT_DAMAGE_BONUS) + // don't handle spells with proc_event entry defined + // this is a temporary workaround, because all spellmods should be handled like that + if (sSpellMgr->GetSpellProcEvent(mod->spellId)) return; if (spell && mod->ownerAura && mod->charges > 0) { --mod->charges; if (mod->charges == 0) - { mod->charges = -1; - } + spell->m_appliedMods.insert(mod->ownerAura); } } |