aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Spells/spell_item.cpp22
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