Skip to content

Commit 30e3353

Browse files
Cheroratkosrb
authored andcommitted
Implement SPELL_FAILED_EQUIPPED_ITEM_CLASS_MAINHAND and SPELL_FAILED_EQUIPPED_ITEM_CLASS_OFFHAND.
1 parent d598919 commit 30e3353

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/game/Spells/Spell.cpp

+15-1
Original file line numberDiff line numberDiff line change
@@ -4778,6 +4778,10 @@ void Spell::SendCastResult(Player* caster, SpellEntry const* spellInfo, SpellCas
47784778
data << uint32(sSpellMgr.GetRequiredAreaForSpell(spellInfo->Id));
47794779
break;
47804780
case SPELL_FAILED_EQUIPPED_ITEM_CLASS:
4781+
case SPELL_FAILED_EQUIPPED_ITEM_CLASS_MAINHAND:
4782+
#if SUPPORTED_CLIENT_BUILD >= CLIENT_BUILD_1_10_2
4783+
case SPELL_FAILED_EQUIPPED_ITEM_CLASS_OFFHAND:
4784+
#endif
47814785
data << uint32(spellInfo->EquippedItemClass);
47824786
data << uint32(spellInfo->EquippedItemSubClassMask);
47834787
data << uint32(spellInfo->EquippedItemInventoryTypeMask);
@@ -7736,7 +7740,17 @@ SpellCastResult Spell::CheckItems()
77367740

77377741
if (!pPlayer->HasItemFitToSpellReqirements(m_spellInfo, ignore))
77387742
{
7739-
return m_IsTriggeredSpell ? SPELL_FAILED_DONT_REPORT : SPELL_FAILED_EQUIPPED_ITEM_CLASS;
7743+
if (m_IsTriggeredSpell)
7744+
return SPELL_FAILED_DONT_REPORT;
7745+
7746+
if (m_spellInfo->HasAttribute(SPELL_ATTR_EX3_REQUIRES_MAIN_HAND_WEAPON))
7747+
return SPELL_FAILED_EQUIPPED_ITEM_CLASS_MAINHAND;
7748+
7749+
if (m_spellInfo->HasAttribute(SPELL_ATTR_EX3_REQUIRES_OFFHAND_WEAPON))
7750+
return SPELL_FAILED_EQUIPPED_ITEM_CLASS_OFFHAND;
7751+
7752+
return SPELL_FAILED_EQUIPPED_ITEM_CLASS;
7753+
77407754
}
77417755
}
77427756

0 commit comments

Comments
 (0)