From 731eb8af39162e2d9a87d9a465a2b745e714101b Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Fri, 13 Sep 2019 19:22:15 -0400 Subject: [PATCH] Implemented Mistford River Turtle --- .../src/mage/cards/m/MistfordRiverTurtle.java | 58 +++++++++++++++++++ Mage.Sets/src/mage/sets/ThroneOfEldraine.java | 1 + 2 files changed, 59 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/m/MistfordRiverTurtle.java diff --git a/Mage.Sets/src/mage/cards/m/MistfordRiverTurtle.java b/Mage.Sets/src/mage/cards/m/MistfordRiverTurtle.java new file mode 100644 index 0000000000..3bfb928789 --- /dev/null +++ b/Mage.Sets/src/mage/cards/m/MistfordRiverTurtle.java @@ -0,0 +1,58 @@ +package mage.cards.m; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.AttacksTriggeredAbility; +import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.filter.FilterPermanent; +import mage.filter.common.FilterCreaturePermanent; +import mage.filter.predicate.Predicates; +import mage.filter.predicate.mageobject.SubtypePredicate; +import mage.filter.predicate.permanent.AnotherPredicate; +import mage.filter.predicate.permanent.AttackingPredicate; +import mage.target.TargetPermanent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class MistfordRiverTurtle extends CardImpl { + + private static final FilterPermanent filter + = new FilterCreaturePermanent("another target attacking non-Human creature"); + + static { + filter.add(AnotherPredicate.instance); + filter.add(AttackingPredicate.instance); + filter.add(Predicates.not(new SubtypePredicate(SubType.HUMAN))); + } + + public MistfordRiverTurtle(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{U}"); + + this.subtype.add(SubType.TURTLE); + this.power = new MageInt(1); + this.toughness = new MageInt(5); + + // Whenever Mistford River Turtle attacks, another target attacking non-Human creature can't be blocked this turn. + Ability ability = new AttacksTriggeredAbility(new CantBeBlockedTargetEffect(Duration.EndOfTurn) + .setText("another target attacking non-Human creature can't be blocked this turn"), false); + ability.addTarget(new TargetPermanent(filter)); + this.addAbility(ability); + } + + private MistfordRiverTurtle(final MistfordRiverTurtle card) { + super(card); + } + + @Override + public MistfordRiverTurtle copy() { + return new MistfordRiverTurtle(this); + } +} diff --git a/Mage.Sets/src/mage/sets/ThroneOfEldraine.java b/Mage.Sets/src/mage/sets/ThroneOfEldraine.java index c448e1eca8..d433997f15 100644 --- a/Mage.Sets/src/mage/sets/ThroneOfEldraine.java +++ b/Mage.Sets/src/mage/sets/ThroneOfEldraine.java @@ -112,6 +112,7 @@ public final class ThroneOfEldraine extends ExpansionSet { cards.add(new SetCardInfo("Merchant of the Vale", 131, Rarity.COMMON, mage.cards.m.MerchantOfTheVale.class)); cards.add(new SetCardInfo("Midnight Clock", 54, Rarity.RARE, mage.cards.m.MidnightClock.class)); cards.add(new SetCardInfo("Mirrormade", 55, Rarity.RARE, mage.cards.m.Mirrormade.class)); + cards.add(new SetCardInfo("Mistford River Turtle", 56, Rarity.COMMON, mage.cards.m.MistfordRiverTurtle.class)); cards.add(new SetCardInfo("Murderous Rider", 97, Rarity.RARE, mage.cards.m.MurderousRider.class)); cards.add(new SetCardInfo("Mystical Dispute", 58, Rarity.UNCOMMON, mage.cards.m.MysticalDispute.class)); cards.add(new SetCardInfo("Oakhame Ranger", 212, Rarity.UNCOMMON, mage.cards.o.OakhameRanger.class));