aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorQAston <none@none>2009-06-24 19:56:13 +0200
committerQAston <none@none>2009-06-24 19:56:13 +0200
commit3fcfbffde7297a7ab72024e8b839e0f2d88f1a8e (patch)
treeea8205edbebad18f5db3969f59dfd5f88c96c7af /src
parent3c568253dc580127dcc17f28c790ed587a910acd (diff)
*Do not apply healing bonus for spells with SPELL_DAMAGE_CLASS_NONE
*Fix Heart of the Crusader. --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/game/SpellMgr.cpp7
-rw-r--r--src/game/Unit.cpp11
2 files changed, 18 insertions, 0 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 9ff422c124b..2ad7b25b3fd 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -3366,6 +3366,13 @@ void SpellMgr::LoadSpellCustomAttr()
switch(i)
{
+ // Heart of the Crusader
+ case 20335:
+ case 20336:
+ case 20337:
+ // Entries were not updated after spell effect change, we have to do that manually:/
+ spellInfo->AttributesEx3 |= SPELL_ATTR_EX3_CAN_PROC_TRIGGERED;
+ break;
case 16007: // Draco-Incarcinatrix 900
// was 46, but effect is aura effect
spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_NEARBY_ENTRY;
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 6a2be9f4c65..5f08895cf87 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -6210,6 +6210,16 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger
}
switch(dummySpell->Id)
{
+ // Heart of the Crusader
+ case 20335: // rank 1
+ triggered_spell_id = 21183;
+ break;
+ case 20336: // rank 2
+ triggered_spell_id = 54498;
+ break;
+ case 20337: // rank 3
+ triggered_spell_id = 54499;
+ break;
// Judgement of Light
case 20185:
{
@@ -9859,6 +9869,7 @@ uint32 Unit::SpellHealingBonus(Unit *pVictim, SpellEntry const *spellProto, uint
// No heal coeff for SPELL_DAMAGE_CLASS_NONE class spells by default
else if (scripted || spellProto->DmgClass == SPELL_DAMAGE_CLASS_NONE)
{
+ scripted = true;
coeff = 0.0f;
}
}