[WOE] Implement Elvish Archivist

This commit is contained in:
theelk801 2023-08-16 21:11:35 -04:00
parent 4781a51fb6
commit a1e9e2f6a5
2 changed files with 53 additions and 0 deletions

View file

@ -0,0 +1,52 @@
package mage.cards.e;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldControlledTriggeredAbility;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.counters.CounterType;
import mage.filter.StaticFilters;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class ElvishArchivist extends CardImpl {
public ElvishArchivist(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{1}{G}");
this.subtype.add(SubType.ELF);
this.subtype.add(SubType.ARTIFICER);
this.power = new MageInt(0);
this.toughness = new MageInt(1);
// Whenever one or more artifacts enter the battlefield under your control, put two +1/+1 counters on Elvish Archivist. This ability triggers only once each turn.
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(
new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)),
StaticFilters.FILTER_CONTROLLED_PERMANENT_ARTIFACT
).setTriggersOnceEachTurn(true)
.setTriggerPhrase("Whenever one or more artifacts enter the battlefield under your control, "));
// Whenever one or more enchantments enter the battlefield under your control, draw a card. This ability triggers only once each turn.
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(
new DrawCardSourceControllerEffect(1),
StaticFilters.FILTER_CONTROLLED_PERMANENT_ENCHANTMENT
).setTriggersOnceEachTurn(true)
.setTriggerPhrase("Whenever one or more enchantments enter the battlefield under your control, "));
}
private ElvishArchivist(final ElvishArchivist card) {
super(card);
}
@Override
public ElvishArchivist copy() {
return new ElvishArchivist(this);
}
}

View file

@ -23,6 +23,7 @@ public final class WildsOfEldraine extends ExpansionSet {
cards.add(new SetCardInfo("Ash, Party Crasher", 201, Rarity.UNCOMMON, mage.cards.a.AshPartyCrasher.class));
cards.add(new SetCardInfo("Beanstalk Wurm", 161, Rarity.COMMON, mage.cards.b.BeanstalkWurm.class));
cards.add(new SetCardInfo("Cruel Somnophage", 222, Rarity.RARE, mage.cards.c.CruelSomnophage.class));
cards.add(new SetCardInfo("Elvish Archivist", 168, Rarity.RARE, mage.cards.e.ElvishArchivist.class));
cards.add(new SetCardInfo("Evolving Wilds", 256, Rarity.COMMON, mage.cards.e.EvolvingWilds.class));
cards.add(new SetCardInfo("Faerie Dreamthief", 89, Rarity.UNCOMMON, mage.cards.f.FaerieDreamthief.class));
cards.add(new SetCardInfo("Forest", 266, Rarity.LAND, mage.cards.basiclands.Forest.class, NON_FULL_USE_VARIOUS));