diff options
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
| -rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index e4e309ecf30..a1eb05d1da9 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -62,6 +62,7 @@ #include "MiscPackets.h" #include "SpellPackets.h" #include "TalentPackets.h" +#include "Conversation.h" pEffect SpellEffects[TOTAL_SPELL_EFFECTS]= { @@ -284,7 +285,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]= &Spell::EffectNULL, //216 SPELL_EFFECT_CREATE_SHIPMENT &Spell::EffectNULL, //217 SPELL_EFFECT_UPGRADE_GARRISON &Spell::EffectNULL, //218 SPELL_EFFECT_218 - &Spell::EffectNULL, //219 SPELL_EFFECT_219 + &Spell::EffectCreateConversation, //219 SPELL_EFFECT_CREATE_CONVERSATION &Spell::EffectAddGarrisonFollower, //220 SPELL_EFFECT_ADD_GARRISON_FOLLOWER &Spell::EffectNULL, //221 SPELL_EFFECT_221 &Spell::EffectCreateHeirloomItem, //222 SPELL_EFFECT_CREATE_HEIRLOOM_ITEM @@ -5659,6 +5660,17 @@ void Spell::EffectCreateGarrison(SpellEffIndex effIndex) unitTarget->ToPlayer()->CreateGarrison(GetEffect(effIndex)->MiscValue); } +void Spell::EffectCreateConversation(SpellEffIndex /*effIndex*/) +{ + if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT) + return; + + if (!m_targets.HasDst()) + return; + + Conversation::CreateConversation(effectInfo->MiscValue, GetCaster(), destTarget->GetPosition(), { GetCaster()->GetGUID() }, GetSpellInfo()); +} + void Spell::EffectAddGarrisonFollower(SpellEffIndex effIndex) { if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET) |
