diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/SharedDefines.h | 2 | ||||
-rw-r--r-- | src/game/Spell.cpp | 11 | ||||
-rw-r--r-- | src/game/Spell.h | 1 | ||||
-rw-r--r-- | src/game/SpellEffects.cpp | 9 |
4 files changed, 10 insertions, 13 deletions
diff --git a/src/game/SharedDefines.h b/src/game/SharedDefines.h index afccf854ee0..e80239b3574 100644 --- a/src/game/SharedDefines.h +++ b/src/game/SharedDefines.h @@ -678,7 +678,7 @@ enum SpellEffects SPELL_EFFECT_KILL_CREDIT = 90, SPELL_EFFECT_THREAT_ALL = 91, SPELL_EFFECT_ENCHANT_HELD_ITEM = 92, - SPELL_EFFECT_SUMMON_PHANTASM = 93, //unused + SPELL_EFFECT_FORCE_DESELECT = 93, SPELL_EFFECT_SELF_RESURRECT = 94, SPELL_EFFECT_SKINNING = 95, SPELL_EFFECT_CHARGE = 96, diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 6c18c3584c3..7f4b8bedc76 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -4995,17 +4995,6 @@ SpellCastResult Spell::CheckCast(bool strict) } break; } - // Not used for summon? - case SPELL_EFFECT_SUMMON_PHANTASM: - { - if(m_caster->GetPetGUID()) - return SPELL_FAILED_ALREADY_HAVE_SUMMON; - - if(m_caster->GetCharmGUID()) - return SPELL_FAILED_ALREADY_HAVE_CHARM; - - break; - } case SPELL_EFFECT_SUMMON_PET: { if(m_caster->GetPetGUID()) //let warlock do a replacement summon diff --git a/src/game/Spell.h b/src/game/Spell.h index 04f3984ed91..bda7ebbfaa3 100644 --- a/src/game/Spell.h +++ b/src/game/Spell.h @@ -322,6 +322,7 @@ class Spell void EffectFeedPet(uint32 i); void EffectDismissPet(uint32 i); void EffectReputation(uint32 i); + void EffectForceDeselect(uint32 i); void EffectSelfResurrect(uint32 i); void EffectSkinning(uint32 i); void EffectCharge(uint32 i); diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index aa7295ca7e6..849bd739d43 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -159,7 +159,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]= &Spell::EffectKillCreditPersonal, // 90 SPELL_EFFECT_KILL_CREDIT Kill credit but only for single person &Spell::EffectUnused, // 91 SPELL_EFFECT_THREAT_ALL one spell: zzOLDBrainwash &Spell::EffectEnchantHeldItem, // 92 SPELL_EFFECT_ENCHANT_HELD_ITEM - &Spell::EffectUnused, // 93 SPELL_EFFECT_SUMMON_PHANTASM + &Spell::EffectForceDeselect, // 93 SPELL_EFFECT_FORCE_DESELECT &Spell::EffectSelfResurrect, // 94 SPELL_EFFECT_SELF_RESURRECT &Spell::EffectSkinning, // 95 SPELL_EFFECT_SKINNING &Spell::EffectCharge, // 96 SPELL_EFFECT_CHARGE @@ -6636,6 +6636,13 @@ void Spell::EffectQuestComplete(uint32 i) _player->AreaExploredOrEventHappens(quest_id); } +void Spell::EffectForceDeselect(uint32 i) +{ + WorldPacket data(SMSG_CLEAR_TARGET, 8);
+ data << uint64(m_caster->GetGUID());
+ m_caster->SendMessageToSet(&data, true); +} + void Spell::EffectSelfResurrect(uint32 i) { if(!unitTarget || unitTarget->isAlive()) |