diff options
author | maximius <none@none> | 2009-09-14 12:09:22 -0700 |
---|---|---|
committer | maximius <none@none> | 2009-09-14 12:09:22 -0700 |
commit | 49b6e6b037fdeb79ee4504e699997d22affc081a (patch) | |
tree | 4fe0b94e0350d97b6406ab6dbf619d6f377eed86 /src | |
parent | 902f6a14e6970fe7aed8aeff758062d2778e5d7c (diff) |
*Stoneclaw Totem & Glyph of Stoneclaw Totem by Themris and thenecromancer
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Totem.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/game/Totem.cpp b/src/game/Totem.cpp index aba3550ab5a..0b621e56edf 100644 --- a/src/game/Totem.cpp +++ b/src/game/Totem.cpp @@ -91,6 +91,39 @@ void Totem::InitSummon() if(m_type == TOTEM_PASSIVE) CastSpell(this, GetSpell(), true); + + // Stoneclaw Totem + case 55328: // Rank 1 + case 55329: // Rank 2 + case 55330: // Rank 3 + case 55332: // Rank 4 + case 55333: // Rank 5 + case 55335: // Rank 6 + case 55278: // Rank 7 + case 58589: // Rank 8 + case 58590: // Rank 9 + case 58591: // Rank 10 + { + int32 basepoints0 = damage; + // Cast Absorb on totems + for(uint8 slot = SUMMON_SLOT_TOTEM; slot < MAX_TOTEM_SLOT; ++slot) + { + if(!unitTarget->m_SummonSlot[slot]) + continue; + + Creature* totem = unitTarget->GetMap()->GetCreature(unitTarget->m_SummonSlot[slot]); + if(totem && totem->isTotem()) + m_caster->CastCustomSpell(totem, 55277, &basepoints0, NULL, NULL, true); + } + // Glyph of Stoneclaw Totem + if (AuraEffect *aur=unitTarget->GetAuraEffect(63298, 0)) + { + basepoints0 *= aur->GetAmount(); + m_caster->CastCustomSpell(unitTarget, 55277, &basepoints0, NULL, NULL, true); + } + break; + } + // Some totems can have both instant effect and passive spell if (GetSpell(1)) CastSpell(this, GetSpell(1), true); |