ScoreForIntentApplyModifiers = function (card, targetPosition, cardIntents) {
  let score = 0;
  const cardId = card.getBaseCardId();
  const validIntents = cardIntents != null ? CardIntent.filterIntentsByIntentType(cardIntents, CardIntentType.ApplyModifiers) : CardIntent.getIntentsByIntentType(cardId, CardIntentType.ApplyModifiers);

  _.each(validIntents, (intent) => {
    const cards = CardIntent.getCardsTargetedByCardWithIntent(card, intent, targetPosition);
    for (let i = 0, il = cards.length; i < il; i++) {
      score += getScoreForApplyModifiersFromCardWithIntentToCard(card, intent, cards[i]);
    }
  });

  return score;
}
Returns the
@param {Card} card
@param {Vec2} targetPosition
@param {Array} [cardIntents=null] forced card intents (won't use card's own card intents)
@returns {Number}
@static
@public