[FIC] Implement Search for Dagger

This commit is contained in:
theelk801 2025-10-01 09:58:30 -04:00
parent 559690f15b
commit b06039a437
2 changed files with 50 additions and 0 deletions

View file

@ -0,0 +1,49 @@
package mage.cards.s;
import mage.abilities.common.EntersBattlefieldOrAttacksAllTriggeredAbility;
import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.PutCards;
import mage.constants.SuperType;
import mage.constants.TargetController;
import mage.filter.FilterCard;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterCreatureCard;
import mage.filter.predicate.mageobject.CommanderPredicate;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class SearchForDagger extends CardImpl {
private static final FilterCard filter = new FilterCreatureCard("a legendary creature card");
private static final FilterPermanent filter2 = new FilterPermanent("you commander");
static {
filter.add(SuperType.LEGENDARY.getPredicate());
filter2.add(TargetController.YOU.getOwnerPredicate());
filter2.add(CommanderPredicate.instance);
}
public SearchForDagger(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{W}");
// Whenever your commander enters or attacks, look at the top six cards of your library. You may reveal a legendary creature card from among them and put it into your hand. Put the rest on the bottom of your library in a random order.
this.addAbility(new EntersBattlefieldOrAttacksAllTriggeredAbility(new LookLibraryAndPickControllerEffect(
6, 1, filter, PutCards.HAND, PutCards.BOTTOM_RANDOM
), filter2));
}
private SearchForDagger(final SearchForDagger card) {
super(card);
}
@Override
public SearchForDagger copy() {
return new SearchForDagger(this);
}
}

View file

@ -322,6 +322,7 @@ public final class FinalFantasyCommander extends ExpansionSet {
cards.add(new SetCardInfo("Sacred Peaks", 418, Rarity.COMMON, mage.cards.s.SacredPeaks.class));
cards.add(new SetCardInfo("Scavenger Grounds", 419, Rarity.RARE, mage.cards.s.ScavengerGrounds.class));
cards.add(new SetCardInfo("Scholar of New Horizons", 252, Rarity.RARE, mage.cards.s.ScholarOfNewHorizons.class));
cards.add(new SetCardInfo("Search for Dagger", 459, Rarity.RARE, mage.cards.s.SearchForDagger.class));
cards.add(new SetCardInfo("Seaside Citadel", 420, Rarity.UNCOMMON, mage.cards.s.SeasideCitadel.class));
cards.add(new SetCardInfo("Secret Rendezvous", 217, Rarity.UNCOMMON, mage.cards.s.SecretRendezvous.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Secret Rendezvous", 218, Rarity.UNCOMMON, mage.cards.s.SecretRendezvous.class, NON_FULL_USE_VARIOUS));