diff options
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
| -rw-r--r-- | src/server/game/Spells/Spell.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index b0a5b3c7cdd..50a53a0cdd0 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -3853,6 +3853,11 @@ void Spell::_cast(bool skipCheck) player->UpdateCriteria(CriteriaType::CastSpell, m_spellInfo->Id); } + // Spells that don't create items can have this attribute - handle here + if (m_CastItem && m_spellInfo->HasAttribute(SPELL_ATTR9_ITEM_CAST_GRANTS_SKILL_GAIN)) + if (Player* playerCaster = m_caster->ToPlayer()) + playerCaster->UpdateCraftSkill(m_spellInfo); + if (!(_triggeredCastFlags & TRIGGERED_IGNORE_POWER_AND_REAGENT_COST)) { // Powers have to be taken before SendSpellGo |
