public static uint AdjustedSpellCostBlm(this SpellData spell) { // If it's a Fire spell if (AstralSpells.Contains(spell.Id)) { if (ActionResourceManager.BlackMage.AstralStacks > 0) { return(spell.Cost * 2); } // Umbral makes a Fire spell cost less switch (ActionResourceManager.BlackMage.UmbralStacks) { case 3: case 2: return(spell.Cost / 4); case 1: return(spell.Cost / 2); } return(spell.Cost); } if (!UmbralSpells.Contains(spell.Id)) { return(spell.Cost); } // Astral makes a Blizzard spell cost less switch (ActionResourceManager.BlackMage.AstralStacks) { case 3: case 2: return(spell.Cost / 4); case 1: return(spell.Cost / 2); } return(spell.Cost); }
public static uint AdjustedSpellCostBlm(this SpellData spell) { // If it's a Fire spell if (AstralSpells.Contains(spell.Id)) { if (ActionResourceManager.BlackMage.AstralStacks > 0 // If we have Umbral Hearts, its free && ActionResourceManager.BlackMage.UmbralHearts == 0) { return(spell.Cost * 2); } if (ActionResourceManager.BlackMage.AstralStacks > 0 // If we have Umbral Hearts, its free && ActionResourceManager.BlackMage.UmbralHearts > 0) { if (spell == Spells.Flare) { return(spell.Cost / 3); } return(spell.Cost * 0); } // Umbral makes a Fire spell cost less switch (ActionResourceManager.BlackMage.UmbralStacks) { // If we have aspect mastery, its free case 3: if (Core.Me.ClassLevel >= 72 && //Except for Flare =( spell != Spells.Flare) { return(spell.Cost * 0); } break; case 2: return(spell.Cost / 4); case 1: return(spell.Cost / 2); } return(spell.Cost); } if (!UmbralSpells.Contains(spell.Id)) { return(spell.Cost); } // Astral makes a Blizzard spell cost less switch (ActionResourceManager.BlackMage.AstralStacks) { case 3: // If we have aspect mastery, its free if (Core.Me.ClassLevel >= 72) { return(spell.Cost * 0); } break; case 2: return(spell.Cost / 4); case 1: return(spell.Cost / 2); } return(spell.Cost); }