aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells
diff options
context:
space:
mode:
authorQAston <qaston@gmail.com>2011-08-20 00:29:57 +0200
committerQAston <qaston@gmail.com>2011-08-20 00:30:38 +0200
commite2d8faea093ab9aeeca1bbd8bba98fb06527a35b (patch)
treee9b760a5496b934d852b8fb52eea6c60710dafbd /src/server/game/Spells
parentcd03dadb7fd46f186bb39c6848d553902a48f495 (diff)
Core/Spells: move Cannibalize and Carrion Feeder cast checks to SpellScripts.
Diffstat (limited to 'src/server/game/Spells')
-rwxr-xr-xsrc/server/game/Spells/Spell.cpp49
-rwxr-xr-xsrc/server/game/Spells/SpellEffects.cpp4
2 files changed, 4 insertions, 49 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index c602a071c23..1dff9a2f3ce 100755
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -652,51 +652,10 @@ void Spell::SelectSpellTargets()
{
case SPELL_EFFECT_DUMMY:
{
- switch(m_spellInfo->Id)
- {
- case 20577: // Cannibalize
- case 54044: // Carrion Feeder
- {
- WorldObject* result = NULL;
- if (m_spellInfo->Id == 20577)
- result = FindCorpseUsing<Trinity::CannibalizeObjectCheck>();
- else
- result = FindCorpseUsing<Trinity::CarrionFeederObjectCheck>();
-
- if (result)
- {
- switch(result->GetTypeId())
- {
- case TYPEID_UNIT:
- case TYPEID_PLAYER:
- AddUnitTarget((Unit*)result, i);
- break;
- case TYPEID_CORPSE:
- m_targets.SetCorpseTarget((Corpse*)result);
- if (Player* owner = ObjectAccessor::FindPlayer(((Corpse*)result)->GetOwnerGUID()))
- AddUnitTarget(owner, i);
- break;
- default:
- break;
- }
- }
- else
- {
- // clear cooldown at fail
- if (m_caster->GetTypeId() == TYPEID_PLAYER)
- m_caster->ToPlayer()->RemoveSpellCooldown(m_spellInfo->Id, true);
- SendCastResult(SPELL_FAILED_NO_EDIBLE_CORPSES);
- finish(false);
- }
- break;
- }
- default:
- if (m_targets.GetUnitTarget())
- AddUnitTarget(m_targets.GetUnitTarget(), i, false);
- else
- AddUnitTarget(m_caster, i, false);
- break;
- }
+ if (m_targets.GetUnitTarget())
+ AddUnitTarget(m_targets.GetUnitTarget(), i, false);
+ else
+ AddUnitTarget(m_caster, i, false);
break;
}
case SPELL_EFFECT_BIND:
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 9b3a020edc6..825c8c4fb14 100755
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -816,10 +816,6 @@ void Spell::EffectDummy(SpellEffIndex effIndex)
}
return;
}
- case 20577: // Cannibalize
- if (unitTarget)
- m_caster->CastSpell(m_caster, 20578, false, NULL);
- return;
case 23019: // Crystal Prison Dummy DND
{
if (!unitTarget || !unitTarget->isAlive() || unitTarget->GetTypeId() != TYPEID_UNIT || unitTarget->ToCreature()->isPet())