diff options
| author | Traesh <traesh@farahlon.com> | 2017-12-17 14:40:04 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2017-12-31 23:22:55 +0100 |
| commit | 89c91c271b94f34076be7256378610a2a45c9ed2 (patch) | |
| tree | 71a2d1751039924a66ebfdb33408695f0cd51d3b /src/server/game/Spells | |
| parent | 5dd686c080723eeeefdabb50b867f9f662d5deb9 (diff) | |
Core/Quests: Implemented player choices
* Implemented SPELL_EFFECT_LAUNCH_QUEST_CHOICE
* Script hook for player choices
Diffstat (limited to 'src/server/game/Spells')
| -rw-r--r-- | src/server/game/Spells/Spell.h | 1 | ||||
| -rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 13 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/server/game/Spells/Spell.h b/src/server/game/Spells/Spell.h index 666e270dfb0..cadbfc53ed1 100644 --- a/src/server/game/Spells/Spell.h +++ b/src/server/game/Spells/Spell.h @@ -468,6 +468,7 @@ class TC_GAME_API Spell void EffectActivateGarrisonBuilding(SpellEffIndex effIndex); void EffectHealBattlePetPct(SpellEffIndex effIndex); void EffectEnableBattlePets(SpellEffIndex effIndex); + void EffectLaunchQuestChoice(SpellEffIndex effIndex); void EffectUncageBattlePet(SpellEffIndex effIndex); void EffectCreateHeirloomItem(SpellEffIndex effIndex); void EffectUpgradeHeirloom(SpellEffIndex effIndex); diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 2c0a91c4277..feed2c9cbc6 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -278,7 +278,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]= &Spell::EffectNULL, //202 SPELL_EFFECT_202 &Spell::EffectNULL, //203 SPELL_EFFECT_203 &Spell::EffectNULL, //204 SPELL_EFFECT_CHANGE_BATTLEPET_QUALITY - &Spell::EffectNULL, //205 SPELL_EFFECT_LAUNCH_QUEST_CHOICE + &Spell::EffectLaunchQuestChoice, //205 SPELL_EFFECT_LAUNCH_QUEST_CHOICE &Spell::EffectNULL, //206 SPELL_EFFECT_ALTER_ITEM &Spell::EffectNULL, //207 SPELL_EFFECT_LAUNCH_QUEST_TASK &Spell::EffectNULL, //208 SPELL_EFFECT_208 @@ -5666,6 +5666,17 @@ void Spell::EffectEnableBattlePets(SpellEffIndex /*effIndex*/) plr->GetSession()->GetBattlePetMgr()->UnlockSlot(0); } +void Spell::EffectLaunchQuestChoice(SpellEffIndex effIndex) +{ + if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET) + return; + + if (!unitTarget || !unitTarget->IsPlayer()) + return; + + unitTarget->ToPlayer()->SendPlayerChoice(GetCaster()->GetGUID(), GetEffect(effIndex)->MiscValue); +} + void Spell::EffectUncageBattlePet(SpellEffIndex /*effIndex*/) { if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT) |
