From ec7454d888d51c254d58aade3eed449ed3b45f3b Mon Sep 17 00:00:00 2001 From: Piotr Szczepanski Date: Mon, 20 Aug 2018 12:37:53 +0200 Subject: [PATCH 1/2] Commanders can be other types than a creature. Commanders do not have to be creatures. They can also be Planeswalkers (Commander 2015, Commander 2018), but also can be other types (e.g. lands when enchanted by Song of the Dryads or Imprisoned in the Moon). --- .../mage/filter/predicate/permanent/CommanderPredicate.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java b/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java index a36e3bdffb0..8be4989a9fd 100644 --- a/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java +++ b/Mage/src/main/java/mage/filter/predicate/permanent/CommanderPredicate.java @@ -19,13 +19,12 @@ public class CommanderPredicate implements Predicate { @Override public boolean apply(Permanent input, Game game) { Player owner = game.getPlayer(input.getOwnerId()); - return input.isCreature() - && owner != null + return owner != null && owner.getCommandersIds().contains(input.getId()); } @Override public String toString() { - return "Commander creature"; + return "Commander"; } } From b9a6bcce8dbbe250de4a6ec8a6c82d63fee0e13b Mon Sep 17 00:00:00 2001 From: Piotr Szczepanski Date: Mon, 20 Aug 2018 12:41:33 +0200 Subject: [PATCH 2/2] Forge of Heroes can place counters only on creatures or planeswalkers. If a Commander becomes other type after the activation but before the resolution, the ability will be countered by the game, due to invalid target. For instance: player A plays their commander and it resolves. Then they activate Forge of Heroes' second ability. In response player B flashes Song of the Dryads on that commander. Song resolves, commander becomes a Forest and loses all it's other types. Forge of Heroes is countered by the game since land is not an allowed type. --- Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java b/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java index 532f5d829c5..e3e24edaa2c 100644 --- a/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java +++ b/Mage.Sets/src/mage/cards/f/ForgeOfHeroes.java @@ -86,11 +86,12 @@ class ForgeOfHeroesEffect extends OneShotEffect { new AddCountersTargetEffect( CounterType.P1P1.createInstance() ).apply(game, source); - } - if (permanent.isPlaneswalker()) { + } else if (permanent.isPlaneswalker()) { new AddCountersTargetEffect( CounterType.LOYALTY.createInstance() ).apply(game, source); + } else { + return false; } return true; }