[11883] Implement spells 32300, 32301

Based on research done by Bugfix at SD2 forums
Also reorder a few case spell_id in this area

Signed-off-by: Schmoozerd <schmoozerd@scriptdev2.com>
This commit is contained in:
Xfurry 2012-01-24 19:17:54 +01:00 committed by Schmoozerd
parent 2c175f6d82
commit d8466dc392
2 changed files with 34 additions and 17 deletions

View file

@ -1258,6 +1258,14 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx)
((Creature*)unitTarget)->ForcedDespawn();
return;
}
case 32300: // Focus Fire
{
if (!unitTarget)
return;
unitTarget->CastSpell(unitTarget, unitTarget->GetMap()->IsRegularDifficulty() ? 32302 : 38382, true);
return;
}
case 33060: // Make a Wish
{
if (m_caster->GetTypeId()!=TYPEID_PLAYER)
@ -6580,6 +6588,22 @@ void Spell::EffectScriptEffect(SpellEffectIndex eff_idx)
m_caster->SummonCreature(16474, unitTarget->GetPositionX(), unitTarget->GetPositionY(), unitTarget->GetPositionZ(), 0.0f, TEMPSUMMON_TIMED_DESPAWN, 30000);
return;
}
case 29395: // Break Kaliri Egg
{
uint32 creature_id = 0;
uint32 rand = urand(0, 99);
if (rand < 10)
creature_id = 17034;
else if (rand < 60)
creature_id = 17035;
else
creature_id = 17039;
if (WorldObject* pSource = GetAffectiveCasterObject())
pSource->SummonCreature(creature_id, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 120*IN_MILLISECONDS);
return;
}
case 29830: // Mirren's Drinking Hat
{
uint32 item = 0;
@ -6610,6 +6634,15 @@ void Spell::EffectScriptEffect(SpellEffectIndex eff_idx)
unitTarget->RemoveAurasAtMechanicImmunity(IMMUNE_TO_ROOT_AND_SNARE_MASK,30918,true);
break;
}
case 32301: // Ping Shirrak
{
if (!unitTarget)
return;
// Cast Focus fire on caster
unitTarget->CastSpell(m_caster, 32300, true);
return;
}
case 38358: // Tidal Surge
{
if (!unitTarget)
@ -6618,22 +6651,6 @@ void Spell::EffectScriptEffect(SpellEffectIndex eff_idx)
unitTarget->CastSpell(unitTarget, 38353, true, NULL, NULL, m_caster->GetObjectGuid());
return;
}
case 29395: // Break Kaliri Egg
{
uint32 creature_id = 0;
uint32 rand = urand(0, 99);
if (rand < 10)
creature_id = 17034;
else if (rand < 60)
creature_id = 17035;
else
creature_id = 17039;
if (WorldObject* pSource = GetAffectiveCasterObject())
pSource->SummonCreature(creature_id, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_OR_DEAD_DESPAWN, 120*IN_MILLISECONDS);
return;
}
case 41055: // Copy Weapon
{
if (m_caster->GetTypeId() != TYPEID_UNIT || !unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER)

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "11882"
#define REVISION_NR "11883"
#endif // __REVISION_NR_H__