chore(Scripts/DK): Move CheckCast to spell_dk_raise_ally script (#17221)
* chore(Scripts/Spell): Move CheckCast to spell_dk_raise_ally script * Update spell_dk.cpp * Update spell_dk.cpp
This commit is contained in:
@@ -6088,23 +6088,6 @@ SpellCastResult Spell::CheckCast(bool strict)
|
|||||||
// for effects of spells that have only one target
|
// for effects of spells that have only one target
|
||||||
switch (m_spellInfo->Effects[i].Effect)
|
switch (m_spellInfo->Effects[i].Effect)
|
||||||
{
|
{
|
||||||
case SPELL_EFFECT_DUMMY:
|
|
||||||
{
|
|
||||||
if (m_spellInfo->SpellFamilyName == SPELLFAMILY_DEATHKNIGHT)
|
|
||||||
{
|
|
||||||
// Raise Ally
|
|
||||||
if( m_spellInfo->Id == 61999 )
|
|
||||||
{
|
|
||||||
Unit* target = m_targets.GetUnitTarget();
|
|
||||||
if (!target)
|
|
||||||
return SPELL_FAILED_BAD_TARGETS;
|
|
||||||
|
|
||||||
if (target->IsAlive()) // not discovered attributeEx5?
|
|
||||||
return SPELL_FAILED_TARGET_NOT_DEAD;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case SPELL_EFFECT_LEARN_SPELL:
|
case SPELL_EFFECT_LEARN_SPELL:
|
||||||
{
|
{
|
||||||
if (m_caster->GetTypeId() != TYPEID_PLAYER)
|
if (m_caster->GetTypeId() != TYPEID_PLAYER)
|
||||||
|
|||||||
@@ -146,6 +146,18 @@ class spell_dk_raise_ally : public SpellScript
|
|||||||
{
|
{
|
||||||
PrepareSpellScript(spell_dk_raise_ally);
|
PrepareSpellScript(spell_dk_raise_ally);
|
||||||
|
|
||||||
|
SpellCastResult CheckCast()
|
||||||
|
{
|
||||||
|
Player* unitTarget = GetHitPlayer();
|
||||||
|
if (!unitTarget)
|
||||||
|
return SPELL_FAILED_BAD_TARGETS;
|
||||||
|
|
||||||
|
if (unitTarget->IsAlive()) // not discovered attributeEx5?
|
||||||
|
return SPELL_FAILED_TARGET_NOT_DEAD;
|
||||||
|
|
||||||
|
return SPELL_CAST_OK;
|
||||||
|
}
|
||||||
|
|
||||||
void HandleDummy(SpellEffIndex /*effIndex*/)
|
void HandleDummy(SpellEffIndex /*effIndex*/)
|
||||||
{
|
{
|
||||||
if (Player* unitTarget = GetHitPlayer())
|
if (Player* unitTarget = GetHitPlayer())
|
||||||
@@ -237,6 +249,7 @@ class spell_dk_raise_ally : public SpellScript
|
|||||||
|
|
||||||
void Register() override
|
void Register() override
|
||||||
{
|
{
|
||||||
|
OnCheckCast += SpellCheckCastFn(spell_dk_raise_ally::CheckCast);
|
||||||
OnEffectHitTarget += SpellEffectFn(spell_dk_raise_ally::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
OnEffectHitTarget += SpellEffectFn(spell_dk_raise_ally::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user