Implements Proc Trigger Spell handler for trinkets Timbal's Focusing Crystal and Shard of Contempt
For which SubVersion revision was the patch created?
5857
Who has been writing this patch?
Ultron
Index: game/Unit.cpp
===================================================================
--- game/Unit.cpp (revision 5857)
+++ game/Unit.cpp (working copy)
@@ -5988,6 +5988,46 @@
CastCustomSpell(this, 33926, &amount, NULL, NULL, true, castItem, triggeredByAura);
return;
}
+ //Augment Pain (Timbal's Focusing Crystal trinket bonus)
+ case 45054:
+ {
+ if(GetTypeId()!=TYPEID_PLAYER || !procSpell || !pVictim || !pVictim->isAlive() || !castItem)
+ return;
+
+ //only periodic damage can trigger spell
+ bool found = false;
+ for(int j = 0; j < 3; ++j)
+ {
+ if(procSpell->EffectApplyAuraName[j]==SPELL_AURA_PERIODIC_DAMAGE
+ ||procSpell->EffectApplyAuraName[j]==SPELL_AURA_PERIODIC_DAMAGE_PERCENT
+ ||procSpell->EffectApplyAuraName[j]==SPELL_AURA_PERIODIC_LEECH)
+ {
+ found = true;
+ break;
+ }
+ }
+ if(!found)
+ return;
+ if(((Player*)this)->HasSpellCooldown(auraSpellInfo->Id))
+ return;
+
+ CastSpell(pVictim, 45055, true, castItem, triggeredByAura);
+ ((Player*)this)->AddSpellCooldown(auraSpellInfo->Id, 0, time(NULL) + 15);
+ return;
+ }
+ //Sunwell Dungeon Melee Trinket (Shard of Contempt trinket bonus)
+ case 45354:
+ {
+ if(GetTypeId()!=TYPEID_PLAYER || !castItem)
+ return;
+
+ if(((Player*)this)->HasSpellCooldown(auraSpellInfo->Id))
+ return;
+
+ CastSpell(this, 45053, true, castItem, triggeredByAura);
+ ((Player*)this)->AddSpellCooldown(auraSpellInfo->Id, 0, time(NULL) + 45);
+ return;
+ }
}
break;
}
DELETE FROM spell_proc_event WHERE entry IN (45054,45354);
INSERT INTO spell_proc_event VALUES
(45054,0,0,0,0,0,131072,0), /*Augment Pain (Timbal's Focusing Crystal trinket bonus)*/
(45354,0,0,0,0,0,1,0); /*Sunwell Dungeon Melee Trinket (Shard of Contempt trinket bonus)*/
http://filebeam.com/80bc95c31b6c5a79afda9af88b4c8444