diff options
author | John Holiver <none@none> | 2010-08-20 14:11:26 -0300 |
---|---|---|
committer | John Holiver <none@none> | 2010-08-20 14:11:26 -0300 |
commit | ca350b4758fef6a2f0a277fb11a5e420887ae718 (patch) | |
tree | ec7743dd227b24319643932602abb53886725a71 | |
parent | d661202054959eb735f3ec017af18e0818d9f6e9 (diff) |
Core/Spells/Scripts: Needed spell fixes for some Trial of the Crusader bosses (Leeching Swarm, Slime Pool and Burning Bile)
--HG--
branch : trunk
-rw-r--r-- | src/server/game/Spells/Auras/SpellAuraEffects.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 43ffabb1a20..a4c28282baa 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -1870,6 +1870,14 @@ void AuraEffect::PeriodicDummyTick(Unit * target, Unit * caster) const target->RemoveAura(64821); } break; + case 66118: // Leeching Swarm (Anub'arak) + int32 lifeLeeched = target->GetHealth() * GetSpellProto()->EffectBasePoints[0] / 100; + if (lifeLeeched < 250) lifeLeeched = 250; + // Damage + caster->CastCustomSpell(target, 66240, &lifeLeeched, 0, 0, false); + // Heal + caster->CastCustomSpell(caster, 66125, &lifeLeeched, 0, 0, false); + break; } break; case SPELLFAMILY_MAGE: @@ -2296,6 +2304,17 @@ void AuraEffect::TriggerSpell(Unit * target, Unit * caster) const // Spell exist but require custom code switch(auraId) { + case 66869: + switch(caster->GetMap()->GetDifficulty()) + { + case RAID_DIFFICULTY_10MAN_NORMAL: triggerSpellId = 66870; break; + case RAID_DIFFICULTY_10MAN_HEROIC: triggerSpellId = 67621; break; + case RAID_DIFFICULTY_25MAN_NORMAL: triggerSpellId = 67622; break; + case RAID_DIFFICULTY_25MAN_HEROIC: triggerSpellId = 67623; break; + } + // Reget trigger spell proto + triggeredSpellInfo = sSpellStore.LookupEntry(triggerSpellId); + break; // Mana Tide case 16191: { @@ -2309,6 +2328,8 @@ void AuraEffect::TriggerSpell(Unit * target, Unit * caster) const // Poison (Grobbulus) case 28158: case 54362: + // Slime Pool (Dreadscale & Acidmaw) + case 66882: target->CastCustomSpell(triggerSpellId, SPELLVALUE_RADIUS_MOD, (int32)((((float)m_tickNumber / 60) * 0.9f + 0.1f) * 10000), NULL, true, NULL, this); return; // Beacon of Light |