mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-19 08:55:32 +01:00
Core/Spells: Fix Earthen Power.
This commit is contained in:
@@ -7004,26 +7004,6 @@ bool Unit::HandleDummyAuraProc(Unit* victim, uint32 damage, AuraEffect* triggere
|
||||
{
|
||||
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
|
||||
case 55198:
|
||||
{
|
||||
|
||||
@@ -26,16 +26,17 @@
|
||||
|
||||
enum ShamanSpells
|
||||
{
|
||||
SHAMAN_SPELL_GLYPH_OF_MANA_TIDE = 55441,
|
||||
SHAMAN_SPELL_MANA_TIDE_TOTEM = 39609,
|
||||
SHAMAN_SPELL_FIRE_NOVA_R1 = 1535,
|
||||
SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1 = 8349,
|
||||
SHAMAN_SPELL_SATED = 57724,
|
||||
SHAMAN_SPELL_EXHAUSTION = 57723,
|
||||
SHAMAN_SPELL_GLYPH_OF_MANA_TIDE = 55441,
|
||||
SHAMAN_SPELL_MANA_TIDE_TOTEM = 39609,
|
||||
SHAMAN_SPELL_FIRE_NOVA_R1 = 1535,
|
||||
SHAMAN_SPELL_FIRE_NOVA_TRIGGERED_R1 = 8349,
|
||||
SHAMAN_SPELL_SATED = 57724,
|
||||
SHAMAN_SPELL_EXHAUSTION = 57723,
|
||||
|
||||
//For Earthen Power
|
||||
SHAMAN_TOTEM_SPELL_EARTHBIND_TOTEM = 6474, //Spell casted by totem
|
||||
SHAMAN_TOTEM_SPELL_EARTHEN_POWER = 59566, //Spell witch remove snare effect
|
||||
// For Earthen Power
|
||||
SHAMAN_TOTEM_SPELL_EARTHBIND_TOTEM = 6474,
|
||||
SHAMAN_TOTEM_SPELL_EARTHEN_POWER = 59566,
|
||||
SHAMAN_TOTEM_SPELL_EARTHEN_POWER_BUFF = 63532,
|
||||
};
|
||||
|
||||
// 51474 - Astral shift
|
||||
@@ -215,9 +216,22 @@ class spell_sha_earthbind_totem : public SpellScriptLoader
|
||||
{
|
||||
Unit* target = GetTarget();
|
||||
if (Unit* caster = aurEff->GetBase()->GetCaster())
|
||||
if (AuraEffect* aur = caster->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2289, 0))
|
||||
if (roll_chance_i(aur->GetBaseAmount()))
|
||||
target->CastSpell(target, SHAMAN_TOTEM_SPELL_EARTHEN_POWER, true, NULL, aurEff);
|
||||
{
|
||||
if (TempSummon* summon = caster->ToTempSummon())
|
||||
{
|
||||
if (Unit* owner = summon->GetOwner())
|
||||
{
|
||||
if (AuraEffect* aur = owner->GetDummyAuraEffect(SPELLFAMILY_SHAMAN, 2289, 0))
|
||||
{
|
||||
if (roll_chance_i(aur->GetBaseAmount()) && owner->HasAuraWithMechanic(1 << MECHANIC_SNARE))
|
||||
{
|
||||
caster->CastSpell(caster, SHAMAN_TOTEM_SPELL_EARTHEN_POWER, true, NULL, aurEff);
|
||||
caster->CastSpell(caster, SHAMAN_TOTEM_SPELL_EARTHEN_POWER_BUFF, true, NULL, aurEff);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Register()
|
||||
|
||||
Reference in New Issue
Block a user