mirror of
https://github.com/mangosfour/server.git
synced 2025-12-17 16:37:00 +00:00
[9363] Implement new way spell 1535 and ranks work.
Signed-off-by: VladimirMangos <vladimir@getmangos.com> Also implemented spell casting requirement check and proper animation.
This commit is contained in:
parent
268bb3221b
commit
6fbe7f4307
3 changed files with 40 additions and 1 deletions
|
|
@ -4485,6 +4485,13 @@ SpellCastResult Spell::CheckCast(bool strict)
|
||||||
if(m_targets.getUnitTarget() && !m_caster->IsFriendlyTo(m_targets.getUnitTarget()) && !m_caster->HasInArc( M_PI_F, m_targets.getUnitTarget() ))
|
if(m_targets.getUnitTarget() && !m_caster->IsFriendlyTo(m_targets.getUnitTarget()) && !m_caster->HasInArc( M_PI_F, m_targets.getUnitTarget() ))
|
||||||
return SPELL_FAILED_UNIT_NOT_INFRONT;
|
return SPELL_FAILED_UNIT_NOT_INFRONT;
|
||||||
}
|
}
|
||||||
|
// Fire Nova
|
||||||
|
if (m_spellInfo->SpellFamilyName == SPELLFAMILY_SHAMAN && m_spellInfo->SpellIconID == 33)
|
||||||
|
{
|
||||||
|
// fire totems slot
|
||||||
|
if (!m_caster->m_TotemSlot[0])
|
||||||
|
return SPELL_FAILED_TOTEMS;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case SPELL_EFFECT_SCHOOL_DAMAGE:
|
case SPELL_EFFECT_SCHOOL_DAMAGE:
|
||||||
|
|
|
||||||
|
|
@ -1982,6 +1982,38 @@ void Spell::EffectDummy(uint32 i)
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
// Fire Nova
|
||||||
|
if (m_spellInfo->SpellIconID == 33)
|
||||||
|
{
|
||||||
|
// fire totems slot
|
||||||
|
if (!m_caster->m_TotemSlot[0])
|
||||||
|
return;
|
||||||
|
|
||||||
|
Creature* totem = m_caster->GetMap()->GetCreature(m_caster->m_TotemSlot[0]);
|
||||||
|
if (!totem)
|
||||||
|
return;
|
||||||
|
|
||||||
|
uint32 triggered_spell_id;
|
||||||
|
switch(m_spellInfo->Id)
|
||||||
|
{
|
||||||
|
case 1535: triggered_spell_id = 8349; break;
|
||||||
|
case 8498: triggered_spell_id = 8502; break;
|
||||||
|
case 8499: triggered_spell_id = 8503; break;
|
||||||
|
case 11314: triggered_spell_id = 11306; break;
|
||||||
|
case 11315: triggered_spell_id = 11307; break;
|
||||||
|
case 25546: triggered_spell_id = 25535; break;
|
||||||
|
case 25547: triggered_spell_id = 25537; break;
|
||||||
|
case 61649: triggered_spell_id = 61650; break;
|
||||||
|
case 61657: triggered_spell_id = 61654; break;
|
||||||
|
default: return;
|
||||||
|
}
|
||||||
|
|
||||||
|
totem->CastSpell(totem, triggered_spell_id, true, NULL, NULL, m_caster->GetGUID());
|
||||||
|
|
||||||
|
// Fire Nova Visual
|
||||||
|
totem->CastSpell(totem, 19823, true, NULL, NULL, m_caster->GetGUID());
|
||||||
|
return;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SPELLFAMILY_DEATHKNIGHT:
|
case SPELLFAMILY_DEATHKNIGHT:
|
||||||
// Death Coil
|
// Death Coil
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "9362"
|
#define REVISION_NR "9363"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue