public RunedArch(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}"); // Runed Arch enters the battlefield tapped. this.addAbility(new EntersBattlefieldTappedAbility()); // {X}, {tap}, Sacrifice Runed Arch: X target creatures with power 2 or less are unblockable this turn. Ability ability = new SimpleActivatedAbility( new CantBeBlockedTargetEffect(Duration.EndOfGame) .setText("X target creatures with power 2 or less can't be blocked this turn."), new ManaCostsImpl("{X}") ); ability.addCost(new TapSourceCost()); ability.addCost(new SacrificeSourceCost()); ability.addTarget(new TargetPermanent(filter)); ability.setTargetAdjuster(XTargetsAdjuster.instance); this.addAbility(ability); }
public DepartedDeckhand(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{U}"); this.subtype.add(SubType.SPIRIT); this.subtype.add(SubType.PIRATE); this.power = new MageInt(2); this.toughness = new MageInt(2); // When Departed Deckhand becomes the target of a spell, sacrifice it. this.addAbility(new BecomesTargetTriggeredAbility( new SacrificeSourceEffect(), StaticFilters.FILTER_SPELL_A )); // Departed Deckhand can only be blocked by Spirits. Ability ability = new SimpleStaticAbility( Zone.BATTLEFIELD, new CantBeBlockedByCreaturesSourceEffect( filter, Duration.WhileOnBattlefield ).setText("{this} can't be blocked except by Spirits") ); this.addAbility(ability); // {3}{U}: Target creature you control can only be blocked by Spirits this turn. ability = new SimpleActivatedAbility( new CantBeBlockedTargetEffect( filter, Duration.EndOfTurn ).setText("Another target creature you control can't be blocked this turn except by Spirits"), new ManaCostsImpl("{3}{U}") ); ability.addTarget(new TargetControlledCreaturePermanent(StaticFilters.FILTER_CONTROLLED_ANOTHER_CREATURE)); this.addAbility(ability); }