*Correct Divine Storm heal, thanks lobuz
--HG-- branch : trunk
This commit is contained in:
@@ -3651,7 +3651,7 @@ void SpellMgr::LoadSpellCustomAttr()
|
|||||||
case 20335:
|
case 20335:
|
||||||
case 20336:
|
case 20336:
|
||||||
case 20337:
|
case 20337:
|
||||||
// Entries were not updated after spell effect change, we have to do that manually:/
|
// Entries were not updated after spell effect change, we have to do that manually :/
|
||||||
spellInfo->AttributesEx3 |= SPELL_ATTR_EX3_CAN_PROC_TRIGGERED;
|
spellInfo->AttributesEx3 |= SPELL_ATTR_EX3_CAN_PROC_TRIGGERED;
|
||||||
break;
|
break;
|
||||||
case 16007: // Draco-Incarcinatrix 900
|
case 16007: // Draco-Incarcinatrix 900
|
||||||
@@ -3718,7 +3718,8 @@ void SpellMgr::LoadSpellCustomAttr()
|
|||||||
case 28542: // Life Drain - Sapphiron
|
case 28542: // Life Drain - Sapphiron
|
||||||
spellInfo->MaxAffectedTargets = 3;
|
spellInfo->MaxAffectedTargets = 3;
|
||||||
break;
|
break;
|
||||||
case 38310: //Multi-Shot
|
case 38310: // Multi-Shot
|
||||||
|
case 53385: // Divine Storm (Damage)
|
||||||
spellInfo->MaxAffectedTargets = 4;
|
spellInfo->MaxAffectedTargets = 4;
|
||||||
break;
|
break;
|
||||||
case 42005: // Bloodboil
|
case 42005: // Bloodboil
|
||||||
|
|||||||
+17
-1
@@ -650,6 +650,22 @@ void Unit::DealDamageMods(Unit *pVictim, uint32 &damage, uint32* absorb)
|
|||||||
|
|
||||||
uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDamage, DamageEffectType damagetype, SpellSchoolMask damageSchoolMask, SpellEntry const *spellProto, bool durabilityLoss)
|
uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDamage, DamageEffectType damagetype, SpellSchoolMask damageSchoolMask, SpellEntry const *spellProto, bool durabilityLoss)
|
||||||
{
|
{
|
||||||
|
// if attacker is a player and spell is not empty/fail
|
||||||
|
if (GetTypeId() == TYPEID_PLAYER && spellProto)
|
||||||
|
{
|
||||||
|
// on divine storm dealed damage - heal
|
||||||
|
if (spellProto->SpellFamilyName == SPELLFAMILY_PALADIN && spellProto->SpellFamilyFlags[1] & 0x20000)
|
||||||
|
{
|
||||||
|
Unit *pRaidGrpMember = GetNextRandomRaidMemberOrPet(30.0f);
|
||||||
|
int32 divineDmg = damage / 4;
|
||||||
|
|
||||||
|
if (!pRaidGrpMember)
|
||||||
|
pRaidGrpMember = this;
|
||||||
|
|
||||||
|
CastCustomSpell(pRaidGrpMember, 54172, &divineDmg, 0, 0, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(pVictim->GetTypeId() == TYPEID_UNIT && ((Creature*)pVictim)->IsAIEnabled)
|
if(pVictim->GetTypeId() == TYPEID_UNIT && ((Creature*)pVictim)->IsAIEnabled)
|
||||||
((Creature*)pVictim)->AI()->DamageTaken(this, damage);
|
((Creature*)pVictim)->AI()->DamageTaken(this, damage);
|
||||||
|
|
||||||
@@ -6256,7 +6272,7 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
|
|||||||
triggered_spell_id = 54203;
|
triggered_spell_id = 54203;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
switch(dummySpell->Id)
|
switch (dummySpell->Id)
|
||||||
{
|
{
|
||||||
// Heart of the Crusader
|
// Heart of the Crusader
|
||||||
case 20335: // rank 1
|
case 20335: // rank 1
|
||||||
|
|||||||
Reference in New Issue
Block a user