Inspired Intellect

This commit is contained in:
luis
2026-09-27 12:58:13 -03:00
parent 7fe2bd27e1
commit 23b9dd6271
+42
View File
@@ -47,6 +47,7 @@ enum MageSpells
SPELL_MAGE_ARCANE_BARRAGE_ENERGIZE = 321529,
SPELL_MAGE_ARCANE_BARRAGE_R3 = 321526,
SPELL_MAGE_ARCANE_CHARGE = 36032,
SPELL_MAGE_ARCANE_INTELLECT = 1459,
SPELL_MAGE_ARCANE_MAGE = 137021,
SPELL_MAGE_ARCANE_ORB = 153626,
SPELL_MAGE_ARCANE_ORB_DAMAGE = 153640,
@@ -111,6 +112,7 @@ enum MageSpells
SPELL_MAGE_IGNITION_BURST = 1217359,
SPELL_MAGE_IMPROVED_COMBUSTION = 383967,
SPELL_MAGE_IMPROVED_SCORCH = 383608,
SPELL_MAGE_INSPIRED_INTELLECT = 458437,
SPELL_MAGE_LIVING_BOMB_EXPLOSION = 44461,
SPELL_MAGE_LIVING_BOMB_PERIODIC = 217694,
SPELL_MAGE_MANA_SURGE = 37445,
@@ -2054,6 +2056,45 @@ class spell_mage_ignite : public AuraScript
}
};
// 458437 - Inspired Intellect
// While the caster knows this talent the Intellect granted by their Arcane Intellect is worth
// $s1% more. The talent itself is only a dummy aura, so the bonus is applied to the buff.
class spell_mage_inspired_intellect : public AuraScript
{
bool Validate(SpellInfo const* /*spellInfo*/) override
{
return ValidateSpellInfo({ SPELL_MAGE_ARCANE_INTELLECT, SPELL_MAGE_INSPIRED_INTELLECT });
}
void CalculateAmount(AuraEffect const* aurEff, SpellEffectValue& amount, bool& /*canBeRecalculated*/)
{
// Arcane Intellect grants its Intellect through a generic stat aura, and the exact one it
// uses is picked out by its misc value so only the Intellect effect is ever touched
if (aurEff->GetMiscValue() != STAT_INTELLECT)
return;
AuraType const auraType = aurEff->GetAuraType();
if (auraType != SPELL_AURA_MOD_STAT_BONUS_PCT && auraType != SPELL_AURA_MOD_TOTAL_STAT_PERCENTAGE
&& auraType != SPELL_AURA_MOD_STAT)
return;
Unit* caster = aurEff->GetCaster();
if (!caster)
return;
AuraEffect const* inspiredIntellect = caster->GetAuraEffect(SPELL_MAGE_INSPIRED_INTELLECT, EFFECT_0, caster->GetGUID());
if (!inspiredIntellect)
return;
amount += inspiredIntellect->GetAmount();
}
void Register() override
{
DoEffectCalcAmount += AuraEffectCalcAmountFn(spell_mage_inspired_intellect::CalculateAmount, EFFECT_ALL, SPELL_AURA_ANY);
}
};
// 1217359 - Ignition Burst (attached to 458964 - Heat Shimmer)
class spell_mage_ignition_burst : public SpellScript
{
@@ -3185,6 +3226,7 @@ void AddSC_mage_spell_scripts()
RegisterSpellScript(spell_mage_ice_lance_damage);
RegisterSpellScript(spell_mage_shatter);
RegisterSpellScript(spell_mage_ignite);
RegisterSpellScript(spell_mage_inspired_intellect);
RegisterSpellScript(spell_mage_ignition_burst);
RegisterSpellScript(spell_mage_imp_mana_gems);
RegisterSpellScript(spell_mage_improved_combustion);