[DMU] Implemented Slimefoot's Survey

This commit is contained in:
Daniel Bomar 2022-08-23 12:56:15 -05:00
parent 3ce05b06c7
commit 0c88d961cf
No known key found for this signature in database
GPG key ID: C86C8658F4023918
2 changed files with 57 additions and 0 deletions

View file

@ -0,0 +1,56 @@
package mage.cards.s;
import java.util.UUID;
import mage.abilities.dynamicvalue.common.DomainValue;
import mage.abilities.effects.common.LookLibraryAndPickControllerEffect;
import mage.abilities.effects.common.LookLibraryControllerEffect;
import mage.abilities.effects.common.search.SearchLibraryPutInPlayEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.AbilityWord;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.common.FilterLandCard;
import mage.filter.predicate.Predicates;
import mage.target.common.TargetCardInLibrary;
/**
*
* @author weirddan455
*/
public final class SlimefootsSurvey extends CardImpl {
private static final FilterLandCard filter = new FilterLandCard("land cards that each have a basic land type");
static {
filter.add(Predicates.or(
SubType.PLAINS.getPredicate(),
SubType.ISLAND.getPredicate(),
SubType.SWAMP.getPredicate(),
SubType.MOUNTAIN.getPredicate(),
SubType.FOREST.getPredicate()
));
}
public SlimefootsSurvey(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{G}");
// Domain Search your library for up to two land cards that each have a basic land type, put them into the battlefield tapped, then shuffle.
// Look at the top X cards of your library, where X is the number of basic land types among lands you control. Put up to one of them on top of your library and the rest on the bottom of your library in a random order.
this.getSpellAbility().setAbilityWord(AbilityWord.DOMAIN);
this.getSpellAbility().addEffect(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(0, 2, filter), true));
this.getSpellAbility().addEffect(new LookLibraryAndPickControllerEffect(
DomainValue.REGULAR, 1, LookLibraryControllerEffect.PutCards.TOP_ANY, LookLibraryControllerEffect.PutCards.BOTTOM_RANDOM, true
));
}
private SlimefootsSurvey(final SlimefootsSurvey card) {
super(card);
}
@Override
public SlimefootsSurvey copy() {
return new SlimefootsSurvey(this);
}
}

View file

@ -90,6 +90,7 @@ public final class DominariaUnited extends ExpansionSet {
cards.add(new SetCardInfo("Sheoldred, the Apocalypse", 107, Rarity.MYTHIC, mage.cards.s.SheoldredTheApocalypse.class));
cards.add(new SetCardInfo("Shivan Devastator", 143, Rarity.MYTHIC, mage.cards.s.ShivanDevastator.class));
cards.add(new SetCardInfo("Shivan Reef", 255, Rarity.RARE, mage.cards.s.ShivanReef.class));
cards.add(new SetCardInfo("Slimefoot's Survey", 178, Rarity.UNCOMMON, mage.cards.s.SlimefootsSurvey.class));
cards.add(new SetCardInfo("Snarespinner", 179, Rarity.COMMON, mage.cards.s.Snarespinner.class));
cards.add(new SetCardInfo("Soul of Windgrace", 220, Rarity.MYTHIC, mage.cards.s.SoulOfWindgrace.class));
cards.add(new SetCardInfo("Stall for Time", 34, Rarity.COMMON, mage.cards.s.StallForTime.class));