diff --git a/Mage.Sets/src/mage/cards/s/SilverDeputy.java b/Mage.Sets/src/mage/cards/s/SilverDeputy.java new file mode 100644 index 00000000000..c09e812fc86 --- /dev/null +++ b/Mage.Sets/src/mage/cards/s/SilverDeputy.java @@ -0,0 +1,63 @@ +package mage.cards.s; + +import mage.MageInt; +import mage.abilities.Ability; +import mage.abilities.common.ActivateAsSorceryActivatedAbility; +import mage.abilities.common.EntersBattlefieldTriggeredAbility; +import mage.abilities.costs.common.TapSourceCost; +import mage.abilities.effects.common.continuous.BoostTargetEffect; +import mage.abilities.effects.common.search.SearchLibraryPutOnLibraryEffect; +import mage.cards.CardImpl; +import mage.cards.CardSetInfo; +import mage.constants.CardType; +import mage.constants.SubType; +import mage.constants.SuperType; +import mage.filter.FilterCard; +import mage.filter.common.FilterLandCard; +import mage.filter.predicate.Predicates; +import mage.target.common.TargetCardInLibrary; +import mage.target.common.TargetControlledCreaturePermanent; + +import java.util.UUID; + +/** + * @author Susucr + */ +public final class SilverDeputy extends CardImpl { + + private static final FilterCard filter = new FilterLandCard("a basic land card or a Desert card"); + + static { + filter.add(Predicates.or(SuperType.BASIC.getPredicate(), SubType.DESERT.getPredicate())); + } + + public SilverDeputy(UUID ownerId, CardSetInfo setInfo) { + super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT, CardType.CREATURE}, "{2}"); + + this.subtype.add(SubType.MERCENARY); + this.power = new MageInt(1); + this.toughness = new MageInt(2); + + // When Silver Deputy enters the battlefield, you may search your library for a basic land card or a Desert card, reveal it, then shuffle and put it on top. + this.addAbility(new EntersBattlefieldTriggeredAbility( + new SearchLibraryPutOnLibraryEffect(new TargetCardInLibrary(filter), true), + true + )); + + // {T}: Target creature you control gets +1/+0 until end of turn. Activate only as a sorcery. + Ability ability = new ActivateAsSorceryActivatedAbility( + new BoostTargetEffect(1, 0), new TapSourceCost() + ); + ability.addTarget(new TargetControlledCreaturePermanent()); + this.addAbility(ability); + } + + private SilverDeputy(final SilverDeputy card) { + super(card); + } + + @Override + public SilverDeputy copy() { + return new SilverDeputy(this); + } +} diff --git a/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java b/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java index 918c07772a4..0dec85771da 100644 --- a/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java +++ b/Mage.Sets/src/mage/sets/OutlawsOfThunderJunction.java @@ -221,6 +221,7 @@ public final class OutlawsOfThunderJunction extends ExpansionSet { cards.add(new SetCardInfo("Sheriff of Safe Passage", 29, Rarity.UNCOMMON, mage.cards.s.SheriffOfSafePassage.class)); cards.add(new SetCardInfo("Shifting Grift", 66, Rarity.UNCOMMON, mage.cards.s.ShiftingGrift.class)); cards.add(new SetCardInfo("Shoot the Sheriff", 106, Rarity.UNCOMMON, mage.cards.s.ShootTheSheriff.class)); + cards.add(new SetCardInfo("Silver Deputy", 248, Rarity.COMMON, mage.cards.s.SilverDeputy.class)); cards.add(new SetCardInfo("Skulduggery", 107, Rarity.COMMON, mage.cards.s.Skulduggery.class)); cards.add(new SetCardInfo("Slick Sequence", 233, Rarity.UNCOMMON, mage.cards.s.SlickSequence.class)); cards.add(new SetCardInfo("Slickshot Lockpicker", 67, Rarity.UNCOMMON, mage.cards.s.SlickshotLockpicker.class));