Core/Spells: Fixed Shadowmourne proc

Scripts/Quests: Fixed quest 24547 (A Feast of Souls)

Closes issue #2331.

--HG--
branch : trunk
This commit is contained in:
Shauren
2010-09-28 17:35:59 +02:00
parent 6875626647
commit d2117fd4ee
6 changed files with 122 additions and 0 deletions
+37
View File
@@ -5676,6 +5676,31 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
}
break;
}
// Item - Shadowmourne Legendary
case 71903:
{
if (!pVictim || !pVictim->isAlive() || HasAura(73422)) // cant collect shards while under effect of Chaos Bane buff
return false;
CastSpell(this, 71905, true, NULL, triggeredByAura);
// this can't be handled in AuraScript because we need to know pVictim
Aura const* dummy = GetAura(71905);
if (!dummy || dummy->GetStackAmount() < 10)
return false;
RemoveAurasDueToSpell(71905);
triggered_spell_id = 71904;
target = pVictim;
break;
}
// Shadow's Fate (Shadowmourne questline)
case 71169:
{
triggered_spell_id = 71203;
target = triggeredByAura->GetCaster();
break;
}
}
break;
}
@@ -8754,6 +8779,18 @@ bool Unit::HandleProcTriggerSpell(Unit *pVictim, uint32 damage, AuraEffect* trig
case 72202:
target = FindNearestCreature(37813, 75.0f); // NPC_DEATHBRINGER_SAURFANG = 37813
break;
// Shadow's Fate (Shadowmourne questline)
case 71169:
if (GetTypeId() != TYPEID_PLAYER)
return false;
if (ToPlayer()->GetQuestStatus(24547) != QUEST_STATUS_INCOMPLETE) // A Feast of Souls
return false;
if (pVictim->GetTypeId() != TYPEID_UNIT)
return false;
// critters are not allowed
if (pVictim->GetCreatureType() == CREATURE_TYPE_CRITTER)
return false;
break;
}
if (cooldown && GetTypeId() == TYPEID_PLAYER && ToPlayer()->HasSpellCooldown(trigger_spell_id))
+1
View File
@@ -3606,6 +3606,7 @@ void SpellMgr::LoadSpellCustomAttr()
case 45150: // Meteor Slash
case 64422: case 64688: // Sonic Screech
case 72373: // Shared Suffering
case 71904: // Chaos Bane
// ONLY SPELLS WITH SPELLFAMILY_GENERIC and EFFECT_SCHOOL_DAMAGE
mSpellCustomAttr[i] |= SPELL_ATTR_CU_SHARE_DAMAGE;
count++;