aboutsummaryrefslogtreecommitdiff
path: root/src/game
diff options
context:
space:
mode:
Diffstat (limited to 'src/game')
-rw-r--r--src/game/SpellAuras.cpp19
-rw-r--r--src/game/SpellMgr.cpp15
2 files changed, 23 insertions, 11 deletions
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index 29783de6c70..66b1392b3a3 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -1677,13 +1677,19 @@ void AuraEffect::TriggerSpell()
// case 27747: break;
// Frost Blast
case 27808:
+ caster->CastCustomSpell(29879, SPELLVALUE_BASE_POINT0, target->GetMaxHealth()*0.26f, m_target, true, NULL, this);
+ return;
+ // Detonate Mana
+ case 27819:
{
- int32 bpDamage = target->GetMaxHealth()*26/100;
- caster->CastCustomSpell(target,29879,&bpDamage,NULL,NULL,true,NULL,this);
+ int32 mana = (uint32)m_target->GetMaxPower(POWER_MANA)*0.25f;
+ if(mana)
+ {
+ mana = m_target->ModifyPower(POWER_MANA, -mana);
+ m_target->CastCustomSpell(27820, SPELLVALUE_BASE_POINT0, -mana*4, NULL, true, NULL, this, caster->GetGUID());
+ }
return;
- }
-// // Detonate Mana
-// case 27819: break;
+ }
// // Controller Timer
// case 28095: break;
// // Stalagg Chain
@@ -2205,6 +2211,9 @@ void AuraEffect::TriggerSpell()
// Mind Sear (target 76/16) if let m_target cast, will damage caster
case 48045:
case 53023:
+ // Curse of the Plaguebringer (22/15)
+ case 29213:
+ case 54835:
caster->CastSpell(m_target, trigger_spell_id, true);
return;
}
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 85752056552..e0b346ce13e 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -2420,6 +2420,9 @@ void SpellMgr::LoadSpellCustomAttr()
case 45150: // Meteor Slash
mSpellCustomAttr[i] |= SPELL_ATTR_CU_SHARE_DAMAGE;
break;
+ case 27820:
+ mSpellCustomAttr[i] |= SPELL_ATTR_CU_EXCLUDE_SELF;
+ break;
case 44978: case 45001: case 45002: // Wild Magic
case 45004: case 45006: case 45010: // Wild Magic
case 31347: // Doom
@@ -2429,8 +2432,6 @@ void SpellMgr::LoadSpellCustomAttr()
case 45976: // Muru Portal Channel
case 39365: // Thundering Storm
case 41071: // Raise Dead (HACK)
- spellInfo->MaxAffectedTargets = 1;
- break;
case 28542: // Life Drain - Sapphiron
spellInfo->MaxAffectedTargets = 1;
break;
@@ -2443,6 +2444,7 @@ void SpellMgr::LoadSpellCustomAttr()
case 45248: //Shadow Blades
case 41303: // Soul Drain
case 54172: // Divine Storm (heal)
+ case 29213: // Curse of the Plaguebringer
spellInfo->MaxAffectedTargets = 3;
break;
case 38310: //Multi-Shot
@@ -2457,11 +2459,12 @@ void SpellMgr::LoadSpellCustomAttr()
case 55665: // Life Drain - Sapphiron
spellInfo->MaxAffectedTargets = 5;
break;
- case 40827: //Sinful Beam
- case 40859: //Sinister Beam
- case 40860: //Vile Beam
- case 40861: //Wicked Beam
+ case 40827: // Sinful Beam
+ case 40859: // Sinister Beam
+ case 40860: // Vile Beam
+ case 40861: // Wicked Beam
case 57669: // Replenishment
+ case 54835: // Curse of the Plaguebringer
spellInfo->MaxAffectedTargets = 10;
break;
case 8122: case 8124: case 10888: case 10890: // Psychic Scream