Core/Spells: Convert/Update druid "Glyph of Innervate" for 4.3.4

This commit is contained in:
Vincent-Michael
2013-07-21 15:28:03 +02:00
parent faa3dc9608
commit e5cba4b071
6 changed files with 55 additions and 22 deletions

View File

@@ -39,6 +39,7 @@ enum DruidSpells
SPELL_DRUID_SOLAR_ECLIPSE = 48517,
SPELL_DRUID_LUNAR_ECLIPSE = 48518,
SPELL_DRUID_ENRAGE_MOD_DAMAGE = 51185,
SPELL_DRUID_GLYPH_OF_INNERVATE = 54833,
SPELL_DRUID_GLYPH_OF_TYPHOON = 62135,
SPELL_DRUID_IDOL_OF_FERAL_SHADOWS = 34241,
SPELL_DRUID_IDOL_OF_WORSHIP = 60774,
@@ -222,6 +223,48 @@ class spell_dru_enrage : public SpellScriptLoader
}
};
// 54832 - Glyph of Innervate
class spell_dru_glyph_of_innervate : public SpellScriptLoader
{
public:
spell_dru_glyph_of_innervate() : SpellScriptLoader("spell_dru_glyph_of_innervate") { }
class spell_dru_glyph_of_innervate_AuraScript : public AuraScript
{
PrepareAuraScript(spell_dru_glyph_of_innervate_AuraScript);
bool Validate(SpellInfo const* /*spellInfo*/) OVERRIDE
{
if (!sSpellMgr->GetSpellInfo(SPELL_DRUID_GLYPH_OF_INNERVATE))
return false;
return true;
}
bool CheckProc(ProcEventInfo& eventInfo)
{
// Not proc from self Innervate
return GetTarget() != eventInfo.GetProcTarget();
}
void HandleEffectProc(AuraEffect const* aurEff, ProcEventInfo& /*eventInfo*/)
{
PreventDefaultAction();
GetTarget()->CastSpell(GetTarget(), SPELL_DRUID_GLYPH_OF_INNERVATE, true, NULL, aurEff);
}
void Register() OVERRIDE
{
DoCheckProc += AuraCheckProcFn(spell_dru_glyph_of_innervate_AuraScript::CheckProc);
OnEffectProc += AuraEffectProcFn(spell_dru_glyph_of_innervate_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
}
};
AuraScript* GetAuraScript() const OVERRIDE
{
return new spell_dru_glyph_of_innervate_AuraScript();
}
};
// 54846 - Glyph of Starfire
class spell_dru_glyph_of_starfire : public SpellScriptLoader
{
@@ -1109,6 +1152,7 @@ void AddSC_druid_spell_scripts()
new spell_dru_dash();
new spell_dru_eclipse_energize();
new spell_dru_enrage();
new spell_dru_glyph_of_innervate();
new spell_dru_glyph_of_starfire();
new spell_dru_idol_lifebloom();
new spell_dru_innervate();

View File

@@ -55,7 +55,7 @@ enum PriestSpells
SPELL_PRIEST_SHADOWFORM_VISUAL_WITH_GLYPH = 107904,
SPELL_PRIEST_SHADOW_WORD_DEATH = 32409,
SPELL_PRIEST_T9_HEALING_2P = 67201,
SPELL_PRIEST_VAMPRIC_EMBRACE_HEAL = 15290,
SPELL_PRIEST_VAMPIRIC_EMBRACE_HEAL = 15290,
SPELL_PRIEST_VAMPIRIC_TOUCH_DISPEL = 64085,
};
@@ -907,7 +907,7 @@ class spell_pri_vampiric_embrace : public SpellScriptLoader
bool Validate(SpellInfo const* /*spellInfo*/) OVERRIDE
{
if (!sSpellMgr->GetSpellInfo(SPELL_PRIEST_VAMPRIC_EMBRACE_HEAL))
if (!sSpellMgr->GetSpellInfo(SPELL_PRIEST_VAMPIRIC_EMBRACE_HEAL))
return false;
return true;
}
@@ -924,7 +924,7 @@ class spell_pri_vampiric_embrace : public SpellScriptLoader
int32 self = int32(CalculatePct(eventInfo.GetDamageInfo()->GetDamage(), aurEff->GetAmount()));
int32 team = int32(CalculatePct(eventInfo.GetDamageInfo()->GetDamage(), aurEff->GetAmount() / 2));
GetTarget()->CastCustomSpell((Unit*)NULL, SPELL_PRIEST_VAMPRIC_EMBRACE_HEAL, &team, &self, NULL, true, NULL, aurEff);
GetTarget()->CastCustomSpell((Unit*)NULL, SPELL_PRIEST_VAMPIRIC_EMBRACE_HEAL, &team, &self, NULL, true, NULL, aurEff);
}
void Register() OVERRIDE

View File

@@ -80,7 +80,6 @@ enum MiscSpells
SPELL_PRIEST_SHADOW_WORD_DEATH = 32409
};
// -85113 - Aftermath
class spell_warl_aftermath : public SpellScriptLoader
{
@@ -104,15 +103,9 @@ class spell_warl_aftermath : public SpellScriptLoader
{
PreventDefaultAction();
TC_LOG_ERROR(LOG_FILTER_GENERAL, "procSpell: %u - blub", eventInfo.GetDamageInfo()->GetSpellInfo()->Id);
if (roll_chance_i(aurEff->GetAmount()))
{
GetTarget()->CastSpell(eventInfo.GetProcTarget(), SPELL_WARLOCK_AFTERMATH_STUN, true, NULL, aurEff);
TC_LOG_ERROR(LOG_FILTER_GENERAL, "procSpell: %u -- proc", eventInfo.GetDamageInfo()->GetSpellInfo()->Id);
}
}
else
TC_LOG_ERROR(LOG_FILTER_GENERAL, "procSpell: %u - xxx", eventInfo.GetDamageInfo()->GetSpellInfo()->Id);
}
void Register() OVERRIDE