[NEO] Implemented Disruption Protocol

This commit is contained in:
Evan Kranzler 2022-02-05 10:46:02 -05:00
parent a1ef9839ba
commit 21b475a0b9
2 changed files with 53 additions and 0 deletions

View file

@ -0,0 +1,52 @@
package mage.cards.d;
import mage.abilities.costs.OrCost;
import mage.abilities.costs.common.TapTargetCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.CounterTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.common.FilterControlledArtifactPermanent;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.permanent.TappedPredicate;
import mage.target.TargetSpell;
import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class DisruptionProtocol extends CardImpl {
private static final FilterControlledPermanent filter
= new FilterControlledArtifactPermanent("untapped artifact you control");
static {
filter.add(TappedPredicate.UNTAPPED);
}
public DisruptionProtocol(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{U}{U}");
// As an additional cost to cast this spell, tap an untapped artifact you control or pay {1}.
this.getSpellAbility().addCost(new OrCost(
new TapTargetCost(new TargetControlledPermanent(filter)),
new GenericManaCost(1), "tap an untapped artifact you control or pay {1}"
));
// Counter target spell.
this.getSpellAbility().addEffect(new CounterTargetEffect());
this.getSpellAbility().addTarget(new TargetSpell());
}
private DisruptionProtocol(final DisruptionProtocol card) {
super(card);
}
@Override
public DisruptionProtocol copy() {
return new DisruptionProtocol(this);
}
}

View file

@ -64,6 +64,7 @@ public final class KamigawaNeonDynasty extends ExpansionSet {
cards.add(new SetCardInfo("Colossal Skyturtle", 216, Rarity.UNCOMMON, mage.cards.c.ColossalSkyturtle.class));
cards.add(new SetCardInfo("Covert Technician", 49, Rarity.UNCOMMON, mage.cards.c.CovertTechnician.class));
cards.add(new SetCardInfo("Dismal Backwater", 267, Rarity.COMMON, mage.cards.d.DismalBackwater.class));
cards.add(new SetCardInfo("Disruption Protocol", 51, Rarity.COMMON, mage.cards.d.DisruptionProtocol.class));
cards.add(new SetCardInfo("Dockside Chef", 93, Rarity.UNCOMMON, mage.cards.d.DocksideChef.class));
cards.add(new SetCardInfo("Dokuchi Shadow-Walker", 94, Rarity.COMMON, mage.cards.d.DokuchiShadowWalker.class));
cards.add(new SetCardInfo("Dokuchi Silencer", 95, Rarity.UNCOMMON, mage.cards.d.DokuchiSilencer.class));