diff options
author | Shauren <none@none> | 2010-09-06 13:54:17 +0200 |
---|---|---|
committer | Shauren <none@none> | 2010-09-06 13:54:17 +0200 |
commit | 588092960bf6378b89bf1d82c4dbc9217f0a0ac4 (patch) | |
tree | bc4d9bca21ce7a33aaf9ec0ab4292bb9c5857657 /src | |
parent | 1b10bd5d057c9a3e44ae9b937fa2b31b1b39591d (diff) |
Core/Spells: Implemented effect for Tiny Abomination in a Jar trinket, original patch by Stryker
Closes issue #2716.
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index ed97fbf077a..8fbec2eefb2 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -7156,6 +7156,46 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger basepoints0 = triggerAmount*damage/100; break; } + case 71406: // Tiny Abomination in a Jar + { + if (!pVictim || !pVictim->isAlive()) + return false; + + CastSpell(this, 71432, true, NULL, triggeredByAura); + + Aura const* dummy = GetAura(71432); + if (!dummy || dummy->GetStackAmount() < 8) + return false; + + RemoveAurasDueToSpell(71432); + triggered_spell_id = 71433; // default main hand attack + // roll if offhand + if (Player const* player = ToPlayer()) + if (player->GetWeaponForAttack(OFF_ATTACK, true) && urand(0, 1)) + triggered_spell_id = 71434; + target = pVictim; + break; + } + case 71545: // Tiny Abomination in a Jar (Heroic) + { + if (!pVictim || !pVictim->isAlive()) + return false; + + CastSpell(this, 71432, true, NULL, triggeredByAura); + + Aura const* dummy = GetAura(71432); + if (!dummy || dummy->GetStackAmount() < 7) + return false; + + RemoveAurasDueToSpell(71432); + triggered_spell_id = 71433; // default main hand attack + // roll if offhand + if (Player const* player = ToPlayer()) + if (player->GetWeaponForAttack(OFF_ATTACK, true) && urand(0, 1)) + triggered_spell_id = 71434; + target = pVictim; + break; + } } break; } |