public AetherTradewinds(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{U}"); // Return target permanent you control and target permanent you don't control to their owners' hands. this.getSpellAbility().addTarget(new TargetControlledPermanent()); this.getSpellAbility().addTarget(new TargetPermanent(filter)); Effect effect = new ReturnToHandTargetEffect(true); effect.setText("Return target permanent you control and target permanent you don't control to their owners' hands"); this.getSpellAbility().addEffect(effect); }
public BlessedWind(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{7}{W}{W}"); // Target player's life total becomes 20. this.getSpellAbility().addEffect(new SetPlayerLifeTargetEffect(20)); this.getSpellAbility().addTarget(new TargetPlayer()); }
public Bifurcate(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{G}"); // Search your library for a permanent card with the same name as target nontoken creature and put that card onto the battlefield. Then shuffle your library. this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); this.getSpellAbility().addEffect(new BifurcateEffect()); }
public AlluringScent(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{G}{G}"); // All creatures able to block target creature this turn do so. this.getSpellAbility().addEffect(new MustBeBlockedByAllTargetEffect(Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); }
public AgonizingMemories(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{B}{B}"); // Look at target player's hand and choose two cards from it. Put them on top of that player's library in any order. this.getSpellAbility().addEffect(new AgonizingMemoriesEffect()); this.getSpellAbility().addTarget(new TargetPlayer()); }
public Boomerang(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{U}{U}"); // Return target permanent to its owner's hand. this.getSpellAbility().addEffect(new ReturnToHandTargetEffect()); this.getSpellAbility().addTarget(new TargetPermanent()); }
public BituminousBlast(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{3}{B}{R}"); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); this.getSpellAbility().addEffect(new DamageTargetEffect(4)); this.addAbility(new CascadeAbility()); }
public BecomeImmense(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{5}{G}"); // Delve (Each card you exile from your graveyard while casting this spell pays for {1}.) this.addAbility(new DelveAbility()); // Target creature gets +6/+6 until end of turn this.getSpellAbility().addEffect(new BoostTargetEffect(6, 6, Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); }
public Allay(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{1}{W}"); // Buyback {3} this.addAbility(new BuybackAbility("{3}")); // Destroy target enchantment. this.getSpellAbility().addTarget(new TargetEnchantmentPermanent()); this.getSpellAbility().addEffect(new DestroyTargetEffect()); }
public BloodcurdlingScream(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{X}{B}"); // Target creature gets +X/+0 until end of turn. this.getSpellAbility().addEffect(new BoostTargetEffect(ExileFromHandCostCardConvertedMana.instance, new StaticValue(0), Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); }
public BoneToAsh(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{U}{U}"); // Counter target creature spell. this.getSpellAbility().addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_CREATURE)); this.getSpellAbility().addEffect(new CounterTargetEffect()); // Draw a card. this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1)); }
public BeaconOfDestruction(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{3}{R}{R}"); this.getSpellAbility().addEffect(new DamageTargetEffect(5)); this.getSpellAbility().addTarget(new TargetAnyTarget()); this.getSpellAbility().addEffect(ShuffleSpellEffect.getInstance()); }
public Afflict(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{B}"); this.getSpellAbility().addEffect(new BoostTargetEffect(-1, -1, Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1)); }
public BeastWithin(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{G}"); // Destroy target permanent. Its controller creates a 3/3 green Beast creature token. this.getSpellAbility().addTarget(new TargetPermanent()); this.getSpellAbility().addEffect(new DestroyTargetEffect()); this.getSpellAbility().addEffect(new BeastWithinEffect()); }
public BoltOfKeranos(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{1}{R}{R}"); // Bolt of Keranos deals 3 damage to target creature and/or player. Scry 1. this.getSpellAbility().addEffect(new DamageTargetEffect(3)); this.getSpellAbility().addTarget(new TargetAnyTarget()); this.getSpellAbility().addEffect(new ScryEffect(1)); }
public BoilingBlood(UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{2}{R}"); // Target creature attacks this turn if able. this.getSpellAbility().addEffect(new AttacksIfAbleTargetEffect(Duration.EndOfTurn)); this.getSpellAbility().addTarget(new TargetCreaturePermanent()); // Draw a card. this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1)); }
public BlueSunsZenith (UUID ownerId, CardSetInfo setInfo) { super(ownerId,setInfo,new CardType[]{CardType.INSTANT},"{X}{U}{U}{U}"); // Target player draws X cards. Shuffle Blue Sun's Zenith into its owner's library. this.getSpellAbility().addEffect(new DrawCardTargetEffect(ManacostVariableValue.instance)); this.getSpellAbility().addEffect(ShuffleSpellEffect.getInstance()); this.getSpellAbility().addTarget(new TargetPlayer()); }
public BlazeOfGlory(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{W}"); // Cast Blaze of Glory only during combat before blockers are declared. this.addAbility(new CastOnlyDuringPhaseStepSourceAbility(TurnPhase.COMBAT, BeforeBlockersAreDeclaredCondition.instance)); // Target creature defending player controls can block any number of creatures this turn. It blocks each attacking creature this turn if able. this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter)); this.getSpellAbility().addEffect(new CanBlockAdditionalCreatureTargetEffect(Duration.EndOfTurn, 0)); this.getSpellAbility().addEffect(new BlazeOfGloryRequirementEffect()); }
public BeckonApparition(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{W/B}"); // Exile target card from a graveyard. Create a 1/1 white and black Spirit creature token with flying. this.getSpellAbility().addEffect(new ExileTargetEffect()); this.getSpellAbility().addTarget(new TargetCardInGraveyard()); this.getSpellAbility().addEffect(new CreateTokenEffect(new WhiteBlackSpiritToken(), 1)); }
public AlabasterPotion(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{X}{W}{W}"); // Choose one - Target player gains X life; or prevent the next X damage that would be dealt to any target this turn. this.getSpellAbility().addEffect(new GainLifeTargetEffect(ManacostVariableValue.instance)); this.getSpellAbility().addTarget(new TargetPlayer()); Mode mode = new Mode(); mode.addEffect(new PreventDamageToTargetEffect(Duration.EndOfTurn, false, true, ManacostVariableValue.instance)); mode.addTarget(new TargetAnyTarget()); this.getSpellAbility().addMode(mode); }