@Override public ExploreTargetEffect copy() { return new ExploreTargetEffect(this); }
public EnterTheUnknown(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{G}"); // Target creature you control explores. this.getSpellAbility().addEffect(new ExploreTargetEffect() .setText("Target creature you control explores. <i>(Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard.)</i>")); this.getSpellAbility().addTarget(new TargetControlledCreaturePermanent()); // You may play an additional land this turn. this.getSpellAbility().addEffect(new PlayAdditionalLandsControllerEffect(1, Duration.EndOfTurn)); }
@Override public boolean apply(Game game, Ability source) { return ExploreSourceEffect.explorePermanent(game, getTargetPointer().getFirst(game, source), source); }
public PathOfDiscovery(UUID ownerId, CardSetInfo setInfo) { super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{G}"); // Whenever a creature enters the battlefield under your control, it explores. (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on the creature, then put the card back or put it into your graveyard.) this.addAbility(new EntersBattlefieldControlledTriggeredAbility( Zone.BATTLEFIELD, new ExploreTargetEffect(), StaticFilters.FILTER_CONTROLLED_A_CREATURE, false, SetTargetPointer.PERMANENT, null)); }