*Fix rock shards spell for archavon script.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-05-23 01:43:46 -05:00
parent a417e71e15
commit ec24442af4
4 changed files with 30 additions and 1 deletions
+2
View File
@@ -2044,6 +2044,8 @@ void Spell::SetTargetMap(uint32 i, uint32 cur)
case TARGET_DEST_CHANNEL:
if(m_originalCaster->m_currentSpells[CURRENT_CHANNELED_SPELL]->m_targets.HasDst())
m_targets = m_originalCaster->m_currentSpells[CURRENT_CHANNELED_SPELL]->m_targets;
else if(Unit* target = m_originalCaster->m_currentSpells[CURRENT_CHANNELED_SPELL]->m_targets.getUnitTarget())
m_targets.setDestination(target);
else
sLog.outError( "SPELL: cannot find channel spell destination for spell ID %u", m_spellInfo->Id );
break;
+20
View File
@@ -4933,6 +4933,26 @@ void Spell::EffectScriptEffect(uint32 effIndex)
return;
}
case 58941: // Rock Shards
if(unitTarget && m_originalCaster)
{
for(uint32 i = 0; i < 5; ++i)
{
m_originalCaster->CastSpell(unitTarget, 58689, true);
m_originalCaster->CastSpell(unitTarget, 58692, true);
}
if(m_originalCaster->GetMap()->IsHeroic())
{
m_originalCaster->CastSpell(unitTarget, 60883, true);
m_originalCaster->CastSpell(unitTarget, 60884, true);
}
else
{
m_originalCaster->CastSpell(unitTarget, 58695, true);
m_originalCaster->CastSpell(unitTarget, 58696, true);
}
}
return;
case 59317: // Teleporting
if (!unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER)
return;
+4
View File
@@ -3161,6 +3161,10 @@ void SpellMgr::LoadSpellCustomAttr()
case TARGET_TYPE_DEST_TARGET:
spellInfo->Targets |= TARGET_FLAG_UNIT;
break;
//case TARGET_TYPE_AREA_DST:
//case TARGET_TYPE_DEST_DEST:
// spellInfo->Targets |= TARGET_FLAG_DEST_LOCATION;
// break;
}
}