aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 88bcafa8298..507ad400139 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -3686,14 +3686,20 @@ void Player::RemoveSpell(uint32 spell_id, bool disabled, bool learn_low_rank)
}
}
- if (spell_id == 46917 && m_canTitanGrip)
+ if (m_canTitanGrip)
{
- RemoveAurasDueToSpell(m_titanGripPenaltySpellId);
- SetCanTitanGrip(false);
+ if (spellInfo && spellInfo->IsPassive() && spellInfo->HasEffect(SPELL_EFFECT_TITAN_GRIP))
+ {
+ RemoveAurasDueToSpell(m_titanGripPenaltySpellId);
+ SetCanTitanGrip(false);
+ }
}
- if (spell_id == 674 && m_canDualWield)
- SetCanDualWield(false);
+ if (m_canDualWield)
+ {
+ if (spellInfo && spellInfo->IsPassive() && spellInfo->HasEffect(SPELL_EFFECT_DUAL_WIELD))
+ SetCanDualWield(false);
+ }
if (sWorld->getBoolConfig(CONFIG_OFFHAND_CHECK_AT_SPELL_UNLEARN))
AutoUnequipOffhandIfNeed();