updated some text on Daretti, Ingenious Iconoclast

This commit is contained in:
Evan Kranzler 2019-01-18 14:29:01 -05:00
parent fed062fe9a
commit 3e1ce3d81f

View file

@ -1,12 +1,10 @@
package mage.cards.d;
import java.util.UUID;
import mage.abilities.Ability;
import mage.abilities.LoyaltyAbility;
import mage.abilities.common.PlaneswalkerEntersWithLoyaltyCountersAbility;
import mage.abilities.costs.common.SacrificeTargetCost;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.CreateTokenCopyTargetEffect;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.DestroyTargetEffect;
@ -14,32 +12,36 @@ import mage.abilities.effects.common.DoIfCostPaid;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.filter.FilterCard;
import mage.filter.FilterPermanent;
import mage.filter.StaticFilters;
import mage.filter.common.FilterArtifactCard;
import mage.filter.common.FilterControlledArtifactPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.CardTypePredicate;
import mage.game.Game;
import mage.game.permanent.token.DarettiConstructToken;
import mage.target.TargetPermanent;
import mage.target.common.TargetCardInGraveyardOrBattlefield;
import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
/**
*
* @author LevelX2
*/
public final class DarettiIngeniousIconoclast extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("artifact or creature");
private static final FilterPermanent filter
= new FilterPermanent("artifact or creature (to destroy)");
private static final FilterCard filter2
= new FilterArtifactCard("artifact card in a graveyard or artifact on the battlefield");
static {
filter.add(Predicates.or(
new CardTypePredicate(CardType.ARTIFACT),
new CardTypePredicate(CardType.CREATURE)));
new CardTypePredicate(CardType.CREATURE)
));
}
public DarettiIngeniousIconoclast(UUID ownerId, CardSetInfo setInfo) {
@ -50,27 +52,31 @@ public final class DarettiIngeniousIconoclast extends CardImpl {
this.addAbility(new PlaneswalkerEntersWithLoyaltyCountersAbility(3));
// +1: Create a 1/1 colorless Construct artifact creature token with defender.
LoyaltyAbility ability = new LoyaltyAbility(new CreateTokenEffect(new DarettiConstructToken()), 1);
this.addAbility(ability);
this.addAbility(new LoyaltyAbility(new CreateTokenEffect(new DarettiConstructToken()), 1));
// -1: You may sacrifice an artifact. If you do, destroy target artifact or creature.
ability = new LoyaltyAbility(
new DoIfCostPaid(new DestroyTargetEffect(""), new SacrificeTargetCost(new TargetControlledPermanent(new FilterControlledArtifactPermanent("an artifact")))),
-1);
Ability ability = new LoyaltyAbility(
new DoIfCostPaid(
new DestroyTargetEffect("destroy target artifact or creature"),
new SacrificeTargetCost(new TargetControlledPermanent(
StaticFilters.FILTER_CONTROLLED_PERMANENT_ARTIFACT_AN
))
), -1
);
ability.addTarget(new TargetPermanent(filter));
this.addAbility(ability);
// -6: Choose target artifact card in a graveyard or artifact on the battlefield. Create three tokens that are copies of it.
ability = new LoyaltyAbility(
new CreateTokenCopyTargetEffect(null, null, false, 3)
.setText("Choose target artifact card in a graveyard or artifact on the battlefield. Create three tokens that are copies of it"),
-6);
ability.addTarget(new TargetCardInGraveyardOrBattlefield(new FilterArtifactCard("artifact card in a graveyard or artifact on the battlefield")));
.setText("Choose target artifact card in a graveyard or artifact on the battlefield. " +
"Create three tokens that are copies of it"), -6
);
ability.addTarget(new TargetCardInGraveyardOrBattlefield(filter2));
this.addAbility(ability);
}
public DarettiIngeniousIconoclast(final DarettiIngeniousIconoclast card) {
private DarettiIngeniousIconoclast(final DarettiIngeniousIconoclast card) {
super(card);
}
@ -79,25 +85,3 @@ public final class DarettiIngeniousIconoclast extends CardImpl {
return new DarettiIngeniousIconoclast(this);
}
}
class DarettiIngeniousIconoclastEffect extends OneShotEffect {
public DarettiIngeniousIconoclastEffect() {
super(Outcome.Benefit);
this.staticText = "Choose target artifact card in a graveyard or artifact on the battlefield. Create three tokens that are copies of it";
}
public DarettiIngeniousIconoclastEffect(final DarettiIngeniousIconoclastEffect effect) {
super(effect);
}
@Override
public DarettiIngeniousIconoclastEffect copy() {
return new DarettiIngeniousIconoclastEffect(this);
}
@Override
public boolean apply(Game game, Ability source) {
return false;
}
}