diff options
| author | tobmaps <spambot42@yandex.ru> | 2011-05-13 03:05:35 +0700 |
|---|---|---|
| committer | tobmaps <spambot42@yandex.ru> | 2011-05-13 03:05:35 +0700 |
| commit | a687c867e9127f816c6ffde36000f6e2474f80e7 (patch) | |
| tree | b98578da759f828e8c34ce715d540f02cad15b5f /src | |
| parent | 5652400557f75318fa30a6e31b99a0c77bdba82b (diff) | |
Core/Spells: Fix cooldown of Bone Shield
Closes #1370
Diffstat (limited to 'src')
| -rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index c62e4261cf4..9dd7f853bf0 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -7828,7 +7828,7 @@ bool Unit::HandleModDamagePctTakenAuraProc(Unit *pVictim, uint32 /*damage*/, Aur // Used in case when access to whole aura is needed // All procs should be handled like this... -bool Unit::HandleAuraProc(Unit * pVictim, uint32 damage, Aura * triggeredByAura, SpellEntry const * procSpell, uint32 /*procFlag*/, uint32 procEx, uint32 /*cooldown*/, bool * handled) +bool Unit::HandleAuraProc(Unit * pVictim, uint32 damage, Aura * triggeredByAura, SpellEntry const * procSpell, uint32 /*procFlag*/, uint32 procEx, uint32 cooldown, bool * handled) { SpellEntry const *dummySpell = triggeredByAura->GetSpellProto(); @@ -8013,6 +8013,18 @@ bool Unit::HandleAuraProc(Unit * pVictim, uint32 damage, Aura * triggeredByAura, switch(dummySpell->Id) { + // Bone Shield cooldown + case 49222: + { + *handled = true; + if (cooldown && GetTypeId() == TYPEID_PLAYER) + { + if (ToPlayer()->HasSpellCooldown(100000)) + return false; + ToPlayer()->AddSpellCooldown(100000, 0, time(NULL) + cooldown); + } + return true; + } // Hungering Cold aura drop case 51209: *handled = true; |
