From a226a6fae8c419eef0a949c23541918de525cd6f Mon Sep 17 00:00:00 2001 From: Evan Kranzler Date: Tue, 7 Jan 2020 23:01:21 -0500 Subject: [PATCH] Implemented Taranika, Akroan Veteran --- .../mage/cards/t/TaranikaAkroanVeteran.java | 68 +++++++++++++++++++ .../src/mage/sets/TherosBeyondDeath.java | 1 + 2 files changed, 69 insertions(+) create mode 100644 Mage.Sets/src/mage/cards/t/TaranikaAkroanVeteran.java diff --git a/Mage.Sets/src/mage/cards/t/TaranikaAkroanVeteran.java b/Mage.Sets/src/mage/cards/t/TaranikaAkroanVeteran.java new file mode 100644 index 0000000000..8340932360 --- /dev/null +++ b/Mage.Sets/src/mage/cards/t/TaranikaAkroanVeteran.java @@ -0,0 +1,68 @@ +package mage.cards.t; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.AttacksTriggeredAbility; +import mage.abilities.effects.common.UntapTargetEffect; +import mage.abilities.effects.common.continuous.GainAbilityTargetEffect; +import mage.abilities.effects.common.continuous.SetPowerToughnessTargetEffect; +import mage.abilities.keyword.IndestructibleAbility; +import mage.abilities.keyword.VigilanceAbility; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.Duration; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.filter.FilterPermanent; +import mage.filter.common.FilterControlledCreaturePermanent; +import mage.filter.predicate.permanent.AnotherPredicate; +import mage.target.TargetPermanent; + +import java.util.UUID; + +/** + * @author TheElk801 + */ +public final class TaranikaAkroanVeteran extends CardImpl { + + private static final FilterPermanent filter = new FilterControlledCreaturePermanent("another creature you control"); + + static { + filter.add(AnotherPredicate.instance); + } + + public TaranikaAkroanVeteran(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{W}{W}"); + + this.addSuperType(SuperType.LEGENDARY); + this.subtype.add(SubType.HUMAN); + this.subtype.add(SubType.SOLDIER); + this.power = new MageInt(3); + this.toughness = new MageInt(3); + + // Vigilance + this.addAbility(VigilanceAbility.getInstance()); + + // Whenever Taranika, Akroan Veteran attacks, untap another target creature you control. Until end of turn, that creature has base power and toughness 4/4 and gains indestructible. + Ability ability = new AttacksTriggeredAbility( + new UntapTargetEffect().setText("untap another target creature you control."), false + ); + ability.addEffect(new SetPowerToughnessTargetEffect(4, 4, Duration.EndOfTurn) + .setText("Until end of turn, that creature has base power and toughness 4/4")); + ability.addEffect(new GainAbilityTargetEffect( + IndestructibleAbility.getInstance(), Duration.EndOfTurn + ).setText("and gains indestructible")); + ability.addTarget(new TargetPermanent(filter)); + this.addAbility(ability); + } + + private TaranikaAkroanVeteran(final TaranikaAkroanVeteran card) { + super(card); + } + + @Override + public TaranikaAkroanVeteran copy() { + return new TaranikaAkroanVeteran(this); + } +} diff --git a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java index ab901226c4..fe84f4178e 100644 --- a/Mage.Sets/src/mage/sets/TherosBeyondDeath.java +++ b/Mage.Sets/src/mage/sets/TherosBeyondDeath.java @@ -131,6 +131,7 @@ public final class TherosBeyondDeath extends ExpansionSet { cards.add(new SetCardInfo("Storm's Wrath", 157, Rarity.RARE, mage.cards.s.StormsWrath.class)); cards.add(new SetCardInfo("Swamp", 252, Rarity.LAND, mage.cards.basiclands.Swamp.class, FULL_ART_BFZ_VARIOUS)); cards.add(new SetCardInfo("Sweet Oblivion", 70, Rarity.UNCOMMON, mage.cards.s.SweetOblivion.class)); + cards.add(new SetCardInfo("Taranika, Akroan Veteran", 39, Rarity.RARE, mage.cards.t.TaranikaAkroanVeteran.class)); cards.add(new SetCardInfo("Tectonic Giant", 158, Rarity.RARE, mage.cards.t.TectonicGiant.class)); cards.add(new SetCardInfo("Temple of Abandon", 244, Rarity.RARE, mage.cards.t.TempleOfAbandon.class)); cards.add(new SetCardInfo("Temple of Deceit", 245, Rarity.RARE, mage.cards.t.TempleOfDeceit.class));