[WHO] Implement Run for Your Life

This commit is contained in:
theelk801 2023-10-14 17:27:36 -04:00
parent 5bdde70b8b
commit 816cc3ac07
2 changed files with 52 additions and 0 deletions

View file

@ -0,0 +1,51 @@
package mage.cards.r;
import mage.abilities.effects.common.combat.CantBeBlockedTargetEffect;
import mage.abilities.effects.common.continuous.GainAbilityTargetEffect;
import mage.abilities.keyword.EscapeAbility;
import mage.abilities.keyword.HasteAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class RunForYourLife extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
static {
filter.add(new AbilityPredicate(HasteAbility.class));
}
public RunForYourLife(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{U}{R}");
// One or two target creatures each gain haste until end of turn. They can't be blocked this turn except by creatures with haste.
this.getSpellAbility().addEffect(new GainAbilityTargetEffect(
HasteAbility.getInstance(), Duration.EndOfTurn
).setText("one or two target creatures each gain haste until end of turn"));
this.getSpellAbility().addEffect(new CantBeBlockedTargetEffect(filter, Duration.EndOfTurn)
.setText("They can't be blocked this turn except by creatures with haste"));
this.getSpellAbility().addTarget(new TargetCreaturePermanent(1, 2));
// Escape--{2}{U}{R}, Exile four other cards from your graveyard.
this.addAbility(new EscapeAbility(this, "{2}{U}{R}", 4));
}
private RunForYourLife(final RunForYourLife card) {
super(card);
}
@Override
public RunForYourLife copy() {
return new RunForYourLife(this);
}
}

View file

@ -143,6 +143,7 @@ public final class DoctorWho extends ExpansionSet {
cards.add(new SetCardInfo("Rogue's Passage", 299, Rarity.UNCOMMON, mage.cards.r.RoguesPassage.class));
cards.add(new SetCardInfo("Romana II", 27, Rarity.RARE, mage.cards.r.RomanaII.class));
cards.add(new SetCardInfo("Rootbound Crag", 300, Rarity.RARE, mage.cards.r.RootboundCrag.class));
cards.add(new SetCardInfo("Run for Your Life", 154, Rarity.RARE, mage.cards.r.RunForYourLife.class));
cards.add(new SetCardInfo("Sally Sparrow", 155, Rarity.RARE, mage.cards.s.SallySparrow.class));
cards.add(new SetCardInfo("Sarah Jane Smith", 6, Rarity.RARE, mage.cards.s.SarahJaneSmith.class));
cards.add(new SetCardInfo("Scattered Groves", 301, Rarity.RARE, mage.cards.s.ScatteredGroves.class));