From d9b9739999f2f3304c7ceaac76ba6ffe44c5fe02 Mon Sep 17 00:00:00 2001 From: hondacrx Date: Thu, 17 Feb 2022 13:37:38 -0500 Subject: [PATCH] Scripts/Spells: Fixed startup errors in spell_gen_war_mode_enlisted Port From (https://github.com/TrinityCore/TrinityCore/commit/2565af5fd34ce53bc390b660b4b8e180f2f9c4d3) --- Source/Scripts/Spells/Generic.cs | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/Source/Scripts/Spells/Generic.cs b/Source/Scripts/Spells/Generic.cs index 9e519dd8c..f82063a4d 100644 --- a/Source/Scripts/Spells/Generic.cs +++ b/Source/Scripts/Spells/Generic.cs @@ -4100,12 +4100,25 @@ namespace Scripts.Spells.Generic public override void Register() { - DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModXpPct)); - DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModXpQuestPct)); - DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModCurrencyGainFromSource)); - DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModMoneyGain)); - DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModAnimaGain)); - DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.Dummy)); + SpellInfo spellInfo = Global.SpellMgr.GetSpellInfo(m_scriptSpellId, Difficulty.None); + + if (spellInfo.HasAura(AuraType.ModXpPct)) + DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModXpPct)); + + if (spellInfo.HasAura(AuraType.ModXpQuestPct)) + DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModXpQuestPct)); + + if (spellInfo.HasAura(AuraType.ModCurrencyGainFromSource)) + DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModCurrencyGainFromSource)); + + if (spellInfo.HasAura(AuraType.ModMoneyGain)) + DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModMoneyGain)); + + if (spellInfo.HasAura(AuraType.ModAnimaGain)) + DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.ModAnimaGain)); + + if (spellInfo.HasAura(AuraType.Dummy)) + DoEffectCalcAmount.Add(new EffectCalcAmountHandler(CalcWarModeBonus, SpellConst.EffectAll, AuraType.Dummy)); } }