[NCC] Implemented In Too Deep

This commit is contained in:
Evan Kranzler 2022-04-27 19:14:45 -04:00
parent 204de3fda5
commit 9175676145
2 changed files with 67 additions and 0 deletions

View file

@ -0,0 +1,66 @@
package mage.cards.i;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.common.AttachEffect;
import mage.abilities.effects.common.continuous.BecomesCreatureAttachedEffect;
import mage.abilities.keyword.EnchantAbility;
import mage.abilities.keyword.SplitSecondAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.predicate.Predicates;
import mage.game.permanent.token.ClueArtifactToken;
import mage.target.TargetPermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class InTooDeep extends CardImpl {
private static final FilterPermanent filter = new FilterPermanent("creature, planeswalker, or Clue");
static {
filter.add(Predicates.or(
CardType.CREATURE.getPredicate(),
CardType.PLANESWALKER.getPredicate(),
SubType.CLUE.getPredicate()
));
}
public InTooDeep(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{U}{U}");
this.subtype.add(SubType.AURA);
// Split second
this.addAbility(new SplitSecondAbility());
// Enchant creature, planeswalker, or Clue
TargetPermanent auraTarget = new TargetPermanent(filter);
this.getSpellAbility().addTarget(auraTarget);
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
this.addAbility(new EnchantAbility(auraTarget.getTargetName()));
// Enchanted permanent is a colorless Clue artifact with "{2}, Sacrifice this artifact: Draw a card" and loses all other abilities.
this.addAbility(new SimpleStaticAbility(new BecomesCreatureAttachedEffect(
new ClueArtifactToken(), "enchanted permanent is a colorless Clue artifact with " +
"\"{2}, Sacrifice this artifact: Draw a card\" and loses all other abilities",
Duration.WhileOnBattlefield, BecomesCreatureAttachedEffect.LoseType.ALL
)));
}
private InTooDeep(final InTooDeep card) {
super(card);
}
@Override
public InTooDeep copy() {
return new InTooDeep(this);
}
}

View file

@ -154,6 +154,7 @@ public final class NewCapennaCommander extends ExpansionSet {
cards.add(new SetCardInfo("Hoofprints of the Stag", 203, Rarity.RARE, mage.cards.h.HoofprintsOfTheStag.class)); cards.add(new SetCardInfo("Hoofprints of the Stag", 203, Rarity.RARE, mage.cards.h.HoofprintsOfTheStag.class));
cards.add(new SetCardInfo("Identity Thief", 224, Rarity.RARE, mage.cards.i.IdentityThief.class)); cards.add(new SetCardInfo("Identity Thief", 224, Rarity.RARE, mage.cards.i.IdentityThief.class));
cards.add(new SetCardInfo("Idol of Oblivion", 368, Rarity.RARE, mage.cards.i.IdolOfOblivion.class)); cards.add(new SetCardInfo("Idol of Oblivion", 368, Rarity.RARE, mage.cards.i.IdolOfOblivion.class));
cards.add(new SetCardInfo("In Too Deep", 27, Rarity.RARE, mage.cards.i.InTooDeep.class));
cards.add(new SetCardInfo("Incubation Druid", 296, Rarity.RARE, mage.cards.i.IncubationDruid.class)); cards.add(new SetCardInfo("Incubation Druid", 296, Rarity.RARE, mage.cards.i.IncubationDruid.class));
cards.add(new SetCardInfo("Indrik Stomphowler", 297, Rarity.UNCOMMON, mage.cards.i.IndrikStomphowler.class)); cards.add(new SetCardInfo("Indrik Stomphowler", 297, Rarity.UNCOMMON, mage.cards.i.IndrikStomphowler.class));
cards.add(new SetCardInfo("Indulge // Excess", 46, Rarity.RARE, mage.cards.i.IndulgeExcess.class)); cards.add(new SetCardInfo("Indulge // Excess", 46, Rarity.RARE, mage.cards.i.IndulgeExcess.class));