[11212] Add dummy effect of spell 47110

Dummy/script effects of related "sub" spells also.

Signed-off-by: NoFantasy <nofantasy@nf.no>
This commit is contained in:
NoFantasy 2011-03-01 08:41:51 +01:00
parent 56205543bf
commit a5d83cea08
2 changed files with 68 additions and 1 deletions

View file

@ -1508,6 +1508,25 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx)
unitTarget->CastSpell(unitTarget,46798,true,m_CastItem,NULL,m_originalCasterGUID);
break;
}
case 47110: // Summon Drakuru's Image
{
uint32 spellId = 0;
switch(m_caster->GetAreaId())
{
case 4255: spellId = 47381; break; // Reagent Check (Frozen Mojo)
case 4209: spellId = 47386; break; // Reagent Check (Zim'Bo's Mojo)
case 4270: spellId = 47389; break; // Reagent Check (Desperate Mojo)
case 4216: spellId = 47408; break; // Reagent Check (Sacred Mojo)
case 4196: spellId = 50441; break; // Reagent Check (Survival Mojo)
}
// The additional castspell arguments are needed here to remove reagents for triggered spells
if (spellId)
m_caster->CastSpell(m_caster, spellId, true, m_CastItem, NULL, m_caster->GetObjectGuid(), m_spellInfo);
return;
}
case 47170: // Impale Leviroth
{
if (!unitTarget || unitTarget->GetTypeId() != TYPEID_UNIT)
@ -1551,6 +1570,37 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx)
return;
}
case 47381: // Reagent Check (Frozen Mojo)
case 47386: // Reagent Check (Zim'Bo's Mojo)
case 47389: // Reagent Check (Desperate Mojo)
case 47408: // Reagent Check (Sacred Mojo)
case 50441: // Reagent Check (Survival Mojo)
{
if (m_caster->GetTypeId() != TYPEID_PLAYER)
return;
switch(m_spellInfo->Id)
{
case 47381:
// Envision Drakuru
m_caster->CastSpell(m_caster, 47118, true);
break;
case 47386:
m_caster->CastSpell(m_caster, 47150, true);
break;
case 47389:
m_caster->CastSpell(m_caster, 47317, true);
break;
case 47408:
m_caster->CastSpell(m_caster, 47406, true);
break;
case 50441:
m_caster->CastSpell(m_caster, 50440, true);
break;
}
return;
}
case 49357: // Brewfest Mount Transformation
{
if (m_caster->GetTypeId() != TYPEID_PLAYER)
@ -1653,6 +1703,15 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx)
return;
}
case 50440: // Envision Drakuru
{
if (!unitTarget)
return;
// Script Cast Summon Image of Drakuru 05
unitTarget->CastSpell(unitTarget, 50439, true);
return;
}
case 50546: // Ley Line Focus Control Ring Effect
case 50547: // Ley Line Focus Control Amulet Effect
case 50548: // Ley Line Focus Control Talisman Effect
@ -6552,6 +6611,14 @@ void Spell::EffectScriptEffect(SpellEffectIndex eff_idx)
return;
}
case 50439: // Script Cast Summon Image of Drakuru 05
{
// TODO: check if summon already exist, if it does in this instance, return.
// Summon Drakuru
m_caster->CastSpell(m_caster, 50446, true);
return;
}
case 50725: // Vigilance - remove cooldown on Taunt
{
Unit* caster = GetAffectiveCaster();