public int getCharmCosts(ICharm charm, ICostAnalyzer analyzer) { boolean favored = analyzer.isMagicFavored(charm); for (ICharmAttribute attribute : charm.getAttributes()) { Map<String, Integer> set = favored ? favoredKeywordCosts : generalKeywordCosts; if (set != null && set.get(attribute.getId()) != null) return set.get(attribute.getId()); } return getCharmCosts(favored, analyzer.getMartialArtsLevel(charm)); }
public int getSpellCosts(ICostAnalyzer costMapping) { boolean isSorceryFavored = costMapping.isOccultFavored(); return getCharmCosts(isSorceryFavored, null); }