Merge pull request #4244 from Warpten/master

Core/Spells: Fix Earthen Power
This commit is contained in:
Shocker
2012-01-04 13:31:45 -08:00
2 changed files with 14 additions and 32 deletions
-20
View File
@@ -7003,26 +7003,6 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
{ {
switch (dummySpell->Id) switch (dummySpell->Id)
{ {
// Earthen Power (Rank 1, 2)
case 51523:
case 51524:
{
// Totem itself must be a caster of this spell
Unit* caster = NULL;
for (ControlList::iterator itr = m_Controlled.begin(); itr != m_Controlled.end(); ++itr) {
if ((*itr)->GetEntry() != 2630)
continue;
caster = *itr;
break;
}
if (!caster)
return false;
caster->CastSpell(caster, 59566, true, castItem, triggeredByAura, originalCaster);
return true;
}
// Tidal Force // Tidal Force
case 55198: case 55198:
{ {
+14 -12
View File
@@ -26,16 +26,16 @@
enum ShamanSpells enum ShamanSpells
{ {
SHAMAN_SPELL_GLYPH_OF_MANA_TIDE = 55441, SHAMAN_SPELL_GLYPH_OF_MANA_TIDE = 55441,
SHAMAN_SPELL_MANA_TIDE_TOTEM = 39609, SHAMAN_SPELL_MANA_TIDE_TOTEM = 39609,
SHAMAN_SPELL_FIRE_NOVA_R1 = 1535, SHAMAN_SPELL_FIRE_NOVA_R1 = 1535,
SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1 = 8349, SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1 = 8349,
SHAMAN_SPELL_SATED = 57724, SHAMAN_SPELL_SATED = 57724,
SHAMAN_SPELL_EXHAUSTION = 57723, SHAMAN_SPELL_EXHAUSTION = 57723,
//For Earthen Power // For Earthen Power
SHAMAN_TOTEM_SPELL_EARTHBIND_TOTEM = 6474, //Spell casted by totem SHAMAN_TOTEM_SPELL_EARTHBIND_TOTEM = 6474,
SHAMAN_TOTEM_SPELL_EARTHEN_POWER = 59566, //Spell witch remove snare effect SHAMAN_TOTEM_SPELL_EARTHEN_POWER = 59566,
}; };
// 51474 - Astral shift // 51474 - Astral shift
@@ -215,9 +215,11 @@ class spell_sha_earthbind_totem : public SpellScriptLoader
{ {
Unit* target = GetTarget(); Unit* target = GetTarget();
if (Unit* caster = aurEff->GetBase()->GetCaster()) if (Unit* caster = aurEff->GetBase()->GetCaster())
if (AuraEffect* aur = caster->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2289, 0)) if (TempSummon* summon = caster->ToTempSummon())
if (roll_chance_i(aur->GetBaseAmount())) if (Unit* owner = summon->GetOwner())
target->CastSpell(target, SHAMAN_TOTEM_SPELL_EARTHEN_POWER, true, NULL, aurEff); if (AuraEffect* aur = owner->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2289, 0))
if (roll_chance_i(aur->GetBaseAmount()) && target->HasAuraWithMechanic(1 << MECHANIC_SNARE))
caster->CastSpell(caster, SHAMAN_TOTEM_SPELL_EARTHEN_POWER, true, NULL, aurEff);
} }
void Register() void Register()