From 2b0c76ad66733e31b7445c2b0fe8035709d696e6 Mon Sep 17 00:00:00 2001 From: Myrd Date: Thu, 22 Dec 2016 18:58:02 +0000 Subject: [PATCH] Fix cost reduction for Not of This World when targeting an Abzan Charm that's exiling a creature. --- .../src/main/java/forge/game/ability/AbilityUtils.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java index 78a2c7f886f..45597f2e56e 100644 --- a/forge-game/src/main/java/forge/game/ability/AbilityUtils.java +++ b/forge-game/src/main/java/forge/game/ability/AbilityUtils.java @@ -581,6 +581,13 @@ public class AbilityUtils { for (final SpellAbility s : saList) { tgtList.addAll(getDefinedCards(s.getHostCard(), "Targeted", s)); + // Check sub-abilities, so that modal cards like Abzan Charm are correctly handled. + // TODO: Should this be done in a more general place, like in getDefinedCards()? + AbilitySub abSub = s.getSubAbility(); + while (abSub != null) { + tgtList.addAll(getDefinedCards(abSub.getHostCard(), "Targeted", abSub)); + abSub = abSub.getSubAbility(); + } } return CardFactoryUtil.handlePaid(tgtList, calcX[1], card) * multiplier; }