diff --git a/Source/Game/Spells/SpellInfo.cs b/Source/Game/Spells/SpellInfo.cs index 60418a986..bbc072aba 100644 --- a/Source/Game/Spells/SpellInfo.cs +++ b/Source/Game/Spells/SpellInfo.cs @@ -2714,6 +2714,7 @@ namespace Game.Spells // Base powerCost int powerCost = power.ManaCost; + bool initiallyNegative = powerCost < 0; // PCT cost from total amount if (power.PowerCostPct != 0) { @@ -2847,6 +2848,10 @@ namespace Game.Spells continue; } + // power cost cannot become negative if initially positive + if (initiallyNegative != (powerCost < 0)) + powerCost = 0; + bool found = false; for (var i = 0; i < costs.Count; ++i) {