diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Spells/spell_item.cpp | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/src/server/scripts/Spells/spell_item.cpp b/src/server/scripts/Spells/spell_item.cpp index db9a822dab8..428dd4f7280 100644 --- a/src/server/scripts/Spells/spell_item.cpp +++ b/src/server/scripts/Spells/spell_item.cpp @@ -3660,9 +3660,9 @@ class spell_item_taunt_flag_targeting : public SpellScript enum MirrensDrinkingHat { - ITEM_LOCH_MODAN_LAGER = 23584, - ITEM_STOUTHAMMER_LITE = 23585, - ITEM_AERIE_PEAK_PALE_ALE = 23586 + SPELL_LOCH_MODAN_LAGER = 29827, + SPELL_STOUTHAMMER_LITE = 29828, + SPELL_AERIE_PEAK_PALE_ALE = 29829 }; // 29830 - Mirren's Drinking Hat @@ -3672,21 +3672,25 @@ class spell_item_mirrens_drinking_hat : public SpellScript void HandleScriptEffect(SpellEffIndex /*effIndex*/) { - uint32 itemId; + uint32 spellId; switch (urand(1, 6)) { case 1: case 2: case 3: - itemId = ITEM_LOCH_MODAN_LAGER; break; + spellId = SPELL_LOCH_MODAN_LAGER; break; case 4: case 5: - itemId = ITEM_STOUTHAMMER_LITE; break; + spellId = SPELL_STOUTHAMMER_LITE; break; case 6: - itemId = ITEM_AERIE_PEAK_PALE_ALE; break; + spellId = SPELL_AERIE_PEAK_PALE_ALE; break; + default: + return; } - if (itemId) - CreateItem(itemId, ItemContext::NONE); + + Unit* caster = GetCaster(); + caster->CastSpell(caster, spellId, CastSpellExtraArgs(TRIGGERED_FULL_MASK) + .SetOriginalCastId(GetSpell()->m_castId)); } void Register() override |